【发布时间】:2013-10-07 15:08:27
【问题描述】:
我有一个通过user_id 连接几个表的sql 查询,问题是我想查看这些表中的所有数据。
目前我正在查询用户表和支付表,并根据user_id 加入它们。
我似乎每个 user_id 只得到一个结果,现在我知道这是要发生的事情,但是如何(如果可能)显示付款表中的所有数据(即我想查看多个显示用户已进行的各种付款的用户 ID)。
我目前正在使用左连接,我认为这可能是问题所在,但切换它仍然没有显示我正在寻找的结果。
这是我目前的加入:
from user u
left join u_subscription us
on u.user_id = us.user_id
left join u_detail ud
on u.user_id = ud.user_id
任何帮助将不胜感激。
提前致谢
纳德
完整的sql查询:
select u.user_id as 'prop:User id', u.user_username as 'prop:username', u.user_email as 'Identity',u.user_created as 'Timestamp', us.user_subscription_expires as 'prop:Expires on', us.user_subscription_payment_provider as 'prop:Payment provider', us.user_subscription_modified, ud.user_detail_signup_country_iso3 as 'prop:Country'
from user u
left outer join user_subscription us
on u.user_id = us.user_subscription_user_id
left outer join user_detail ud
on u.user_id = ud.user_detail_user_id
【问题讨论】:
-
你能显示你正在使用的完整查询吗?听起来您可能有
GROUP BY u.user_id,但如果没有完整的查询,我们无法确定。 -
请显示完整的查询。
-
这很快!我尝试了左外连接,但没有运气。我没有在任何地方使用 group by。
-
正如@newfurniturey 所说,您能否向我们展示您的完整查询?
-
添加到编辑中。谢谢