我的数据库中有一个名为Users的表。一个用户可以有多个地址,但在某些情况下,他们不会有任何地址。我的mysql链接语句只返回至少有一个地址的记录:
$query = ' SELECT DISTINCT a.id FROM users as a, addresses as b' ;
$query.= ' WHERE a.id = b.userId ' ;
如何更改此设置,以便没有地址的用户仍将被返回?
我想我只是缺少一个简单的解决方案!
提前谢谢。
改用LEFT JOIN
:
SELECT DISTINCT a.id
FROM Users a LEFT JOIN Addresses b
on a.ID = b.UserID
您需要使用LEFT JOIN
:
$query = ' SELECT DISTINCT a.id FROM users as a LEFT JOIN addresses as b' ;
$query.= ' ON a.id = b.userId ' ;