SQL高級查詢(二)——連接查詢

 連接查詢(join on關鍵字)

 

 

注意: 可以多個表連接

 

一、 連接條件(等值連接和非等值連接)

1.等值連接

 

2.非等值連接

 

二、 自連接

注意: 由於自連接兩張表的列名和表明都一模一樣,所以需要給表起別名用來區 分前後兩張表

 

三、 內連接(inner join …… on)

查詢的結果只有兩張表的連接條件對應值均不爲null時的連接結果。

例如:

連接條件 t1.id=t2.id,只有t1.id,t2.id不爲空時才能將對應數據配對成功,沒配對的數據會被捨棄。

 

 

四、 外連接

左外連接

右外連接

 

應用場景:查找一個表中有,而另一個表中沒有的數據。

外連接分爲左外連接,右外連接,全連接。

左外連接就是左邊的數據會全部保留(即使左邊的連接條件值=null),但是由於null值無法比較,所以左外連接未配對成功的數據的右表爲空。

右外連接,全連接依次類推。

注意 :mysql不支持全外連接。

通過外連接來查找其他表無記錄的數據

這是外連接的常用場景

五、 交叉連接

返回兩張表的所有笛卡爾乘積的結果,一般無意義。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章