(sqlfiddle)不返回左表中的所有行

时间:2012-11-13 06:45:50

标签: php mysql database

http://sqlfiddle.com/#!2/41cf8/1

我实际上期望它返回类似这样的东西

firstname - chuck
lastname - null

但它只返回名字行

我如何修改它以返回带有空值的lastname?

谢谢

1 个答案:

答案 0 :(得分:2)

您需要将AND users_meta.meta_user_id = 1从WHERE子句移动到JOIN子句中。

在WHERE子句中,它限制返回的行。在JOIN中,它仅限制JOINed行,并且由于您使用的是LEFT join,因此您仍然可以获得姓氏。