本篇文章主要探討MySQL中左鏈接和右鏈接的區(qū)別。有一定的參考價值,有需要的朋友可以參考一下,跟隨小編一起來看解決方法吧。
惠民網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。創(chuàng)新互聯(lián)于2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。
首先創(chuàng)建兩個新表,數(shù)據(jù)如下:
student 表數(shù)據(jù):
score 表數(shù)據(jù):
可以看到students表中stu_id為16048008的記錄對應(yīng)score表沒有數(shù)據(jù);
1.當(dāng)進(jìn)行內(nèi)連接時,系統(tǒng)會自動忽略兩個表中對應(yīng)不起來的數(shù)據(jù):
-- 顯示內(nèi)連接所有數(shù)據(jù):SELECT * FROM students st INNER JOIN score sc ON st.sid=sc.stu_id;
數(shù)據(jù)太多,只截圖最末尾的:
可以看到,數(shù)據(jù)只顯示到16048007,16048008的并沒有顯示,所以內(nèi)連接只顯示所有有關(guān)聯(lián)的數(shù)據(jù).
2.左鏈接,顯示關(guān)鍵詞left左邊表中的所有數(shù)據(jù),右邊表數(shù)據(jù)數(shù)據(jù)少了補NULL值,數(shù)據(jù)多了不顯示;
-- 左外鏈接 leftSELECT * FROM students st LEFT JOIN score sc ON st.sid=sc.stu_id;
可以看到,16048008在右邊score表中沒有數(shù)據(jù),系統(tǒng)用NUll補齊,
SELECT * FROM score sc LEFT JOIN students st ON st.sid=sc.stu_id;
上圖是我們將students表和score表換了一下位置的運行結(jié)果,可以看出,本來右邊表16048008記錄,因為在左邊表鐘沒有數(shù)據(jù)對應(yīng),所以被刪除了,可以看出,左鏈接是以左邊表中數(shù)據(jù)為參照,顯示左邊表中所有數(shù)據(jù),右邊表,只顯示與左邊表對應(yīng)的數(shù)據(jù),少了補NULl,多了刪除;
同理,右鏈接是以右邊為參照,左邊少了補NULL,多了刪除,這里就不多說了;
以上可以得出:
1.內(nèi)連接,顯示兩個表中有聯(lián)系的所有數(shù)據(jù);
2.左鏈接,以左表為參照,顯示所有數(shù)據(jù);
3.右鏈接,以右表為參照顯示數(shù)據(jù);
看完上述內(nèi)容,你們對MySQL中左鏈接和右鏈接的區(qū)別大概了解了嗎?如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!