SQL如何包含在其他表中找不到的结果



我有两个表。

表1"配置文件">

ID 名称
01 John
02 韦恩
03 Eve

是的,在左联接的情况下,它将占用表左侧的所有行,因此在第二个查询中,左表是Check_In,其中没有Eve。

您可以使用完整的外部联接来获得结果中的Eve数据。

使用此查询

SELECT Profile.Name,Check_In.DateFROM Check_InCheck_In.PID=Profile.ID 上的完整外部联接配置文件

这就是原因-如果你想从Profile中拥有所有行,那么你需要在FROM子句中使用Profile-并在Check_In上执行LEFT JOIN-试试这个:

SELECT Profile.Name, Check_In.CDate 
FROM Profile
LEFT JOIN Check_In ON Check_In.PID = Profile.ID

根据定义,LEFT JOIN返回JOIN运算符左侧表中的所有行,并连接右侧表中存在的行(对于JOIN条件与右侧表不匹配的行,返回NULL(。

最新更新