This question already has answers here:
Selecting all items in one table and join with another table, allowing nulls
                                
                                    (4个答案)
                                
                        
                                2年前关闭。
            
                    
球队,

我目前迷路了..

我想做的是一种JOIN,但是当条件为emty时,使用SELECTJOIN会跳过行。

在下面的示例中,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

09-30 15:45
查看更多