SQL右連接【RIGHT JOIN】詳解及圖解
SQL RIGHT JOIN 連接兩個表并根據(jù)一個條件獲取行,該條件在兩個表中都匹配(在下面的語法中提到的 JOIN 子句之前和之后),并且不匹配的行也可以從 JOIN 子句之后編寫的表中可用(在下面的語法中提到)。
SQL Right Join 的圖示:
語法:
SELECT *
FROM table1
RIGHT [ OUTER ] JOIN table2
ON table1.column_name=table2.column_name;SQL RIGHT join 從 table2 中獲取一組完整的記錄,即 JOIN 子句后面最右邊的表,以及 table1 中的匹配記錄(取決于可用性)。當不進行匹配時,結果為左側(cè)為 NULL。
語法圖 - SQL Right Join
SQL 右聯(lián)接或右外聯(lián)接的示例
樣品表:食品(foods)
+---------+--------------+-----------+------------+ | ITEM_ID | ITEM_NAME | ITEM_UNIT | COMPANY_ID | +---------+--------------+-----------+------------+ | 1 | Chex Mix | Pcs | 16 | | 6 | Cheez-It | Pcs | 15 | | 2 | BN Biscuit | Pcs | 15 | | 3 | Mighty Munch | Pcs | 17 | | 4 | Pot Rice | Pcs | 15 | | 5 | Jaffa Cakes | Pcs | 18 | | 7 | Salt n Shake | Pcs | | +---------+--------------+-----------+------------+
示例表:公司(company)
+------------+---------------+--------------+ | COMPANY_ID | COMPANY_NAME | COMPANY_CITY | +------------+---------------+--------------+ | 18 | Order All | Boston | | 15 | Jack Hill Ltd | London | | 16 | Akas Foods | Delhi | | 17 | Foodies. | London | | 19 | sip-n-Bite. | New York | +------------+---------------+--------------+
要從公司表中獲取公司 ID、公司名稱和公司城市列,以及從食品表中獲取公司 ID、項目名稱列,在與這些提到的表進行 OUTER JOIN 后,可以使用以下 SQL 語句:
SQL代碼
SELECT company.company_id,company.company_name,
company.company_city,foods.company_id,foods.item_name
FROM   company
RIGHT JOIN foods
ON company.company_id = foods.company_id;解釋:
此 SQL 語句將返回 foods 表中的所有行,并且僅返回 company 表中聯(lián)接字段相等的行,如果 ON 子句與 company 表中的任何記錄不匹配,則聯(lián)接仍將返回行,但 company 表的每一列中都返回 NULL。
輸出:
COMPANY_ID COMPANY_NAME              COMPANY_CITY              COMPANY_ID ITEM_NAME
---------- ------------------------- ------------------------- ---------- --------------
18         Order All                 Boston                    18         Jaffa Cakes
15         Jack Hill Ltd             London                    15         Pot Rice
15         Jack Hill Ltd             London                    15         BN Biscuit
15         Jack Hill Ltd             London                    15         Cheez-It
16         Akas Foods                Delhi                     16         Chex Mix
17         Foodies.                  London                    17         Mighty Munch
                                                                          Salt n Shake此處所示的上述 SQL 語句的輸出是使用 Oracle Database 10g Express Edition 獲取的
上述示例的圖示:
版權所屬:SO JSON在線解析
原文地址:http://suancuo.cn/blog/504.html
轉(zhuǎn)載時必須以鏈接形式注明原始出處及本聲明。
如果本文對你有幫助,那么請你贊助我,讓我更有激情的寫下去,幫助更多的人。
