【发布时间】:2011-07-13 00:41:33
【问题描述】:
我需要从表鸟类(基本上所有鸟类)中选择所有值,然后加入另一个跟踪谁喜欢那只鸟的表。
所以我希望查询返回所有鸟类,以及人们喜欢那只鸟的记录的 ID。如果没有任何人喜欢这只鸟的记录,那么该字段应该为空。
我当前的查询没有得到空值。这里是:
select bird_name, member_id
from birds
right join bird_likes on birds.bird_id = bird_likes.bird_id
where member_id = 2 ;
如何确保birds 表中的每一行都显示一次?
【问题讨论】:
-
是的,我曾尝试使用左连接,但由于某种原因,它仍然只返回匹配的行,而不是左表中的所有行。不知道可能是什么问题。
-
如果 member_id 在bird_likes 表上,你就找到了罪魁祸首;)在这种情况下,请参阅我的答案以获得可行的解决方案。