mysql的內(nèi)連接,左連接和右鏈接查詢?cè)斀?/h1>
更新時(shí)間:2022年03月22日 15:33:02 作者:博文豆芽菜
這篇文章主要為大家詳細(xì)介紹了mysql的內(nèi)連接,左連接和右鏈接查詢,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
mysql> SELECT * FROM tcount_tbl;
+---------------+--------------+
| runoob_author | runoob_count |
+---------------+--------------+
| 菜鳥(niǎo)教程 | 10 |
| RUNOOB.COM | 20 |
| Google | 22 |
+---------------+--------------+
3 rows in set (0.01 sec)
mysql> SELECT * from runoob_tbl;
+-----------+---------------+---------------+-----------------+
| runoob_id | runoob_title | runoob_author | submission_date |
+-----------+---------------+---------------+-----------------+
| 1 | 學(xué)習(xí) PHP | 菜鳥(niǎo)教程 | 2017-04-12 |
| 2 | 學(xué)習(xí) MySQL | 菜鳥(niǎo)教程 | 2017-04-12 |
| 3 | 學(xué)習(xí) Java | RUNOOB.COM | 2015-05-01 |
| 4 | 學(xué)習(xí) Python | RUNOOB.COM | 2016-03-06 |
| 5 | 學(xué)習(xí) C | FK | 2017-04-05 |
+-----------+---------------+---------------+-----------------+
5 rows in set (0.01 sec)
INNER JOIN(內(nèi)連接,或等值連接):
使用MySQL的INNER JOIN(也可以省略 INNER 使用 JOIN,效果一樣)來(lái)連接以上兩張表
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a, tcount_tbl b WHERE a.runoob_author = b.runoob_author;
相當(dāng)于:
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a LEFT JOIN tcount_tbl b ON a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+
| a.runoob_id | a.runoob_author | b.runoob_count |
+-------------+-----------------+----------------+
| 1 | 菜鳥(niǎo)教程 | 10 |
| 2 | 菜鳥(niǎo)教程 | 10 |
| 3 | RUNOOB.COM | 20 |
| 4 | RUNOOB.COM | 20 |
+-------------+-----------------+----------------+

MySQL LEFT JOIN:
MySQL left join 與 join 有所不同。 MySQL LEFT JOIN 會(huì)讀取左邊數(shù)據(jù)表的全部數(shù)據(jù),即便右邊表無(wú)對(duì)應(yīng)數(shù)據(jù)。
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a LEFT JOIN tcount_tbl b ON a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+
| a.runoob_id | a.runoob_author | b.runoob_count |
+-------------+-----------------+----------------+
| 1 | 菜鳥(niǎo)教程 | 10 |
| 2 | 菜鳥(niǎo)教程 | 10 |
| 3 | RUNOOB.COM | 20 |
| 4 | RUNOOB.COM | 20 |
| 5 | FK | NULL |
+-------------+-----------------+----------------+

MySQL RIGHT JOIN:
MySQL RIGHT JOIN 會(huì)讀取右邊數(shù)據(jù)表的全部數(shù)據(jù),即便左邊邊表無(wú)對(duì)應(yīng)數(shù)據(jù)。
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a RIGHT JOIN tcount_tbl b ON a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+
| a.runoob_id | a.runoob_author | b.runoob_count |
+-------------+-----------------+----------------+
| 1 | 菜鳥(niǎo)教程 | 10 |
| 2 | 菜鳥(niǎo)教程 | 10 |
| 3 | RUNOOB.COM | 20 |
| 4 | RUNOOB.COM | 20 |
| NULL | NULL | 22 |
+-------------+-----------------+----------------+

總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
-
MySQL中SELECT+UPDATE處理并發(fā)更新問(wèn)題解決方案分享
這篇文章主要介紹了MySQL中SELECT+UPDATE處理并發(fā)更新問(wèn)題解決方案分享,需要的朋友可以參考下 2014-05-05
-
MySQL中導(dǎo)出用戶權(quán)限設(shè)置的腳本分享
這篇文章主要介紹了MySQL中導(dǎo)出用戶權(quán)限設(shè)置的腳本分享,本文通過(guò)導(dǎo)出mysql.user表中數(shù)據(jù)實(shí)現(xiàn)導(dǎo)出權(quán)限設(shè)置,需要的朋友可以參考下 2014-10-10
-
MySQL Lock wait timeout exceeded錯(cuò)誤
“Lock wait timeout exceeded” 是一個(gè)常見(jiàn)的MySQL錯(cuò)誤,指示了潛在的性能問(wèn)題或死鎖,本文就來(lái)介紹一下如何解決,感興趣的可以了解一下 2024-05-05
-
mysql 批處理文件出錯(cuò)后繼續(xù)執(zhí)行的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇mysql 批處理文件出錯(cuò)后繼續(xù)執(zhí)行的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧 2016-10-10
最新評(píng)論
mysql> SELECT * FROM tcount_tbl; +---------------+--------------+ | runoob_author | runoob_count | +---------------+--------------+ | 菜鳥(niǎo)教程 | 10 | | RUNOOB.COM | 20 | | Google | 22 | +---------------+--------------+ 3 rows in set (0.01 sec) mysql> SELECT * from runoob_tbl; +-----------+---------------+---------------+-----------------+ | runoob_id | runoob_title | runoob_author | submission_date | +-----------+---------------+---------------+-----------------+ | 1 | 學(xué)習(xí) PHP | 菜鳥(niǎo)教程 | 2017-04-12 | | 2 | 學(xué)習(xí) MySQL | 菜鳥(niǎo)教程 | 2017-04-12 | | 3 | 學(xué)習(xí) Java | RUNOOB.COM | 2015-05-01 | | 4 | 學(xué)習(xí) Python | RUNOOB.COM | 2016-03-06 | | 5 | 學(xué)習(xí) C | FK | 2017-04-05 | +-----------+---------------+---------------+-----------------+ 5 rows in set (0.01 sec)
INNER JOIN(內(nèi)連接,或等值連接):
使用MySQL的INNER JOIN(也可以省略 INNER 使用 JOIN,效果一樣)來(lái)連接以上兩張表
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a, tcount_tbl b WHERE a.runoob_author = b.runoob_author; 相當(dāng)于: SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a LEFT JOIN tcount_tbl b ON a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+ | a.runoob_id | a.runoob_author | b.runoob_count | +-------------+-----------------+----------------+ | 1 | 菜鳥(niǎo)教程 | 10 | | 2 | 菜鳥(niǎo)教程 | 10 | | 3 | RUNOOB.COM | 20 | | 4 | RUNOOB.COM | 20 | +-------------+-----------------+----------------+

MySQL LEFT JOIN:
MySQL left join 與 join 有所不同。 MySQL LEFT JOIN 會(huì)讀取左邊數(shù)據(jù)表的全部數(shù)據(jù),即便右邊表無(wú)對(duì)應(yīng)數(shù)據(jù)。
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a LEFT JOIN tcount_tbl b ON a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+ | a.runoob_id | a.runoob_author | b.runoob_count | +-------------+-----------------+----------------+ | 1 | 菜鳥(niǎo)教程 | 10 | | 2 | 菜鳥(niǎo)教程 | 10 | | 3 | RUNOOB.COM | 20 | | 4 | RUNOOB.COM | 20 | | 5 | FK | NULL | +-------------+-----------------+----------------+

MySQL RIGHT JOIN:
MySQL RIGHT JOIN 會(huì)讀取右邊數(shù)據(jù)表的全部數(shù)據(jù),即便左邊邊表無(wú)對(duì)應(yīng)數(shù)據(jù)。
SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a RIGHT JOIN tcount_tbl b ON a.runoob_author = b.runoob_author;
+-------------+-----------------+----------------+ | a.runoob_id | a.runoob_author | b.runoob_count | +-------------+-----------------+----------------+ | 1 | 菜鳥(niǎo)教程 | 10 | | 2 | 菜鳥(niǎo)教程 | 10 | | 3 | RUNOOB.COM | 20 | | 4 | RUNOOB.COM | 20 | | NULL | NULL | 22 | +-------------+-----------------+----------------+

總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
MySQL中SELECT+UPDATE處理并發(fā)更新問(wèn)題解決方案分享
這篇文章主要介紹了MySQL中SELECT+UPDATE處理并發(fā)更新問(wèn)題解決方案分享,需要的朋友可以參考下2014-05-05
MySQL中導(dǎo)出用戶權(quán)限設(shè)置的腳本分享
這篇文章主要介紹了MySQL中導(dǎo)出用戶權(quán)限設(shè)置的腳本分享,本文通過(guò)導(dǎo)出mysql.user表中數(shù)據(jù)實(shí)現(xiàn)導(dǎo)出權(quán)限設(shè)置,需要的朋友可以參考下2014-10-10
MySQL Lock wait timeout exceeded錯(cuò)誤
“Lock wait timeout exceeded” 是一個(gè)常見(jiàn)的MySQL錯(cuò)誤,指示了潛在的性能問(wèn)題或死鎖,本文就來(lái)介紹一下如何解決,感興趣的可以了解一下2024-05-05
mysql 批處理文件出錯(cuò)后繼續(xù)執(zhí)行的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇mysql 批處理文件出錯(cuò)后繼續(xù)執(zhí)行的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10

