2

我有这个查询:

SELECT * 
FROM people 
JOIN pets ON people.id = pets.owner_id;

它为有宠物的人返回结果。但并不是所有人都有宠物。我希望查询返回 people 表中的所有人,如果他们碰巧有宠物也返回宠物。

但是由于宠物是可选的,我怎样才能让这个查询返回甚至没有宠物的人呢?

4

2 回答 2

7

使用左连接

SELECT * 
FROM people 
LEFT JOIN pets ON people.id = pets.owner_id;

加入说明

在 SQL 中加入 在此处输入图像描述

于 2013-05-08T18:22:02.660 回答
-1

JOIN默认为INNER JOIN

在您的情况下,您应该使用

left join
于 2013-05-08T18:23:42.633 回答