关于各种JOIN连接的解释说明【原创】
INNER JOIN的連接原理:
1.從左表里取出第一行
2.按照ON條件查找右表里的每一行
3.找出匹配的行(包括重復(fù)的行)放在結(jié)果集里,不匹配的行則放棄。
4.從左表里取出第二行
5.重復(fù)步驟2-3
6.從左表里取出第三行
7.............
LEFT JOIN的連接原理:
1.從左表里取出第一行
2.按照ON條件查找右表里的每一行
3.如果有匹配的行,則放在結(jié)果集里(包括重復(fù)的行),如果沒(méi)有匹配的行,則右表里的所有字段都賦值為NULL
4.從左表里取出第二行
5.重復(fù)步驟2-3
6.從左表里取出第三行
7.............
RIGHT JOIN和LEFT JOIN類似
FULL JOIN的連接原理
1.先按照LEFT JOIN進(jìn)行查找,得到一個(gè)結(jié)果集
2.再按照RIGHT JOIN進(jìn)行查找,得到一個(gè)結(jié)果集
3.把兩個(gè)結(jié)果集UNION起來(lái)
4.運(yùn)用DISTINCT關(guān)鍵字查詢,得到最終結(jié)果集
CROSS JOIN連接原理
很簡(jiǎn)單,就是把兩個(gè)表的所有行做笛卡爾積,得到最終結(jié)果集
轉(zhuǎn)載于:https://www.cnblogs.com/ProgRamMer-cSdn/archive/2008/09/27/1299981.html
總結(jié)
以上是生活随笔為你收集整理的关于各种JOIN连接的解释说明【原创】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 20个方法让你摆脱坏习惯
- 下一篇: 为什么要在定义抽象类时使用abstrac