mysql之左連接與右連接


左連接:

 select 列1,列2,列N from

 tableA left join tableB

 on tableA.列 = tableB.列(正常是一個外鍵列) [此處表連接成一張大表,完全當成一張普通表看]

 where,having,group by ...照常寫。

 

 右連接:

 select 列1,列2,列N from

 tableA right join tableB

 on tableA.列 = tableB.列(正常是一個外鍵列) [此處表連接成一張大表,完全當成一張普通表看]

 where,having,group by ...照常寫。

 內連接:

 select 列1,列2,列N from

 tableA inner join tableB

 on tableA.列 = tableB.列(正常是一個外鍵列) [此處表連接成一張大表,完全當成一張普通表看]

 where,having,group by ...照常寫。

 

左連接:即以左表為基准,到右表找匹配的數據,找不到匹配的用NULL補齊。

如何記憶:

1.左右連接是可以相互轉化的

2.可以把右連接轉換為左連接來使用(並推薦左連接來代替右連接,兼容性會好一些)

A 站在 B的左邊   ---》 B 站在 A的右邊

A left join B --->  B right join A 是同樣的。

 

內連接:查詢左右表都有的數據,不要左/右中NULL的那一部分

內連接是左右連接的交集。

能否查出左右連接的並集呢?

目前的mysql是不能的,它不支持外連接,outer join,可以用union來達到目的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM