This question already has answers here:
Selecting all items in one table and join with another table, allowing nulls
(4个答案)
2年前关闭。
球队,
我目前迷路了..
我想做的是一种
在下面的示例中,
我想要存档的结果是T1的所有4行,包括T2的信息(如果存在)-通过“ Ort”进行比较/加入。
(4个答案)
2年前关闭。
球队,
我目前迷路了..
我想做的是一种
JOIN
,但是当条件为emty时,使用SELECT
的JOIN
会跳过行。在下面的示例中,
UNION
将以错误消息结尾,因为T1上的选择带有4行,T2带有2行。T1: Name Ort
----------------------
Markus München
Christian Berlin
Hubert Frankfurt
Kalle Düsseldorf
T2
Ort Anmerkung
-----------------------
München Bayern
Frankfurt Hessen
我想要存档的结果是T1的所有4行,包括T2的信息(如果存在)-通过“ Ort”进行比较/加入。
Result:
T1.Name T1.Ort T2.Anmerkung
------------------------------
Markus München Bayern
Christian Berlin
Hubert Frankfurt Hessen
Kalle Düsseldorf
最佳答案
使用LEFT JOIN
。它将保留第一个表中没有第二行中相应行的记录。
select t1.name, t1.ort, t2.anmerkung
from t1
left join t2 on t1.ort=t2.ort