程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL表LEFT JOIN左銜接與RIGHT JOIN右銜接的實例教程

MySQL表LEFT JOIN左銜接與RIGHT JOIN右銜接的實例教程

編輯:MySQL綜合教程

MySQL表LEFT JOIN左銜接與RIGHT JOIN右銜接的實例教程。本站提示廣大學習愛好者:(MySQL表LEFT JOIN左銜接與RIGHT JOIN右銜接的實例教程)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL表LEFT JOIN左銜接與RIGHT JOIN右銜接的實例教程正文


LEFT JOIN 語法用法與實例
MySQL LEFT JOIN 語法
SQL(MySQL) LEFT JOIN 會獲得左表(table1)全體記載,即便右表(table2)並沒有對應婚配記載。LEFT JOIN 根本語法以下:

... FROM table1 LEFT JOIN table2 ON condition ...

MySQL LEFT JOIN 用法實例
上面是兩個原始數據表:
article 文章表:

20151216115130281.png (641×129)

user 用戶表:

20151216115300000.png (638×103)

我們列出一切的文章及對應的所屬用戶,即便沒有效戶的文章也列出。
SELECT ... LEFT JOIN ... ON 語句以下:

SELECT article.aid,article.title,user.username FROM article LEFT JOIN user ON article.uid = user.uid

前往查詢成果以下:

https://www.aspphp.online/shujuku/UploadFiles_3118/201707/2017072814245157.png (634×130)

可以看出來,與 INNER JOIN 顯著的差別是,左表記載被全體掏出,即便右表無對應婚配記載。
提醒
這裡所謂記載被“全體”掏出,是絕對於 INNER JOIN 的限制來講的。其實可以在下面的 SQL 語句前面加個 WHERE 前提或許 LIMIT 等症結字以統一般 SQL 語句一樣對成果集做一個規模限制。
IS NULL
在下面的例子中,關於右表中沒有對應婚配的數據記載,其一切的列都被置為 NULL,是以要查詢這部門記載(如在下面例子中表現為查找 aid=4 這類無對運用戶的文章記載),可以附加 IS NULL 前提:

SELECT article.aid,article.title,user.username FROM article LEFT JOIN user 
ON article.uid = user.uid WHERE user.uid IS NULL

RIGHT JOIN 語法用法與實例
MySQL RIGHT JOIN 語法
SQL(MySQL) RIGHT JOIN 會獲得右表(table2)全體記載,即便左表(table2)並沒有對應婚配記載。RIGHT JOIN 根本語法以下:

... FROM table1 RIGHT JOIN table2 ON condition ...

MySQL RIGHT JOIN 用法實例
上面是兩個原始數據表:
article 文章表:

https://www.aspphp.online/shujuku/UploadFiles_3118/201707/2017072814245164.png (642×130)

user 用戶表:

https://www.aspphp.online/shujuku/UploadFiles_3118/201707/2017072814245163.png (640×103)

我們列出一切的用戶,和他們能夠具有的文章。
SELECT ... RIGHT JOIN ... ON 語句以下:

SELECT article.aid,article.title,user.username FROM article RIGHT JOIN user ON article.uid = user.uid

前往查詢成果以下:

https://www.aspphp.online/shujuku/UploadFiles_3118/201707/2017072814245161.png (641×130)

比較 LEFT JOIN 前往的查詢成果,RIGHT JOIN 前往的成果與其恰好“相反”。
IS NULL
在下面的例子中,關於左表中沒有對應婚配的數據記載,其一切的列都被置為 NULL,是以要查詢這部門記載(如在下面例子中表現為查找 username=Jack 這類無對應文章的一切用戶),可以附加 IS NULL 前提:

SELECT article.aid,article.title,user.username FROM article LEFT JOIN user 
ON article.uid = user.uid WHERE article.aid IS NULL

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved