[OT] Idea to get all columns from multiple tables in DB
Jacob Carlborg
doob at me.com
Wed Jan 8 07:19:07 UTC 2020
On 2020-01-07 22:01, Steven Schveighoffer wrote:
> I have a database serialization package that I use to fetch data from a
> database. The column names are all identified or tagged appropriately,
> so I just use:
>
> connection.query("SELECT * FROM user").byItem!User;
>
> and it serializes the data from the resulting rows into the struct User
> type for consumption as a range.
>
> However, if there's a join, it poses a problem. Let's say I have an
> Equipment item, which is owned by a user. I can select both the
> equipment and the owner via:
>
> SELECT * FROM equipment left join user on (user.id = equipment.owner_id)
>
> However, this causes problems because I get duplicate columns (e.g. name
> might be in both, or id). Which one goes with which?
IIRC Rails is using the fully qualified column name for everything.
Instead of using "*" it enumerates all columns of, in your case, User.
It will inspect User to figure out all the column names. You can easily
do the same thing in D by inspecting the fields on User.
--
/Jacob Carlborg
More information about the Digitalmars-d
mailing list