我在执行以下查询时遇到问题。我的想法是我有两个表店和用户。在商店中我有列store_owners和store_last_modified,两个值都是与dbo.Users的id相关的整数。如何显示存储在与两列相关的用户中的名称。像那样:
select stores.name , users.name as name_store_owner , users.name as name_store_last_modified
from stores
LEFT JOIN users ON stores.store_owners=users.id (related to name_store_owner)
LEFT JOIN users ON stores.store_last_modified=users.id (related to name_store_last_modified)
我该怎么做?
提前谢谢你。
答案 0 :(得分:2)
您需要为表提供别名,因此您可以在from
子句中两次引用同一个表。此外,您需要参考右表(users
而非stores
):
select s.name, uo.name as name_store_owner, um.name as name_store_last_modified
from stores s left join
users uo
on s.store_owners = uo.id left join
users um
on s.store_last_modified = um.id
答案 1 :(得分:0)
似乎可以在不参考表格的情况下检查条件。
select * from
stores s
left join
users u on u.id = s.store_owners
and u.id = s.store_last_modified
从您的问题看来,用户ID(id)应该与stores表中的单行匹配。