LEFT JOIN 與 RIGHT JOIN 運算

重要:  本文係由機器翻譯而成,請參閱免責聲明。本文的英文版本請見這裡,以供參考。

用於 FROM 子句時,會合併來源資料表的記錄。

語法

table1 [向左 |向右] 加入table2
table1.field1compopr table2.field2

LEFT JOIN 與 RIGHT JOIN 運算由下列參數組成:

子句各部分

說明

table1table2

要合併其中記錄的資料表名稱

field1field2

聯結的欄位名稱。這些欄位的資料類型必須相同,且包含同類型的資料,但是名稱不必相同

compopr

任一關聯比較運算子:"="、"<"、">"、"<="、">=" 或 "<>"


備註

LEFT JOIN 運算可以用來建立左方外部聯結。左外部聯結包含兩個資料表中,第一個 (左側) 資料表的所有記錄,即使第二個 (右側) 資料表的記錄中沒有相符的值,情況也是如此。

RIGHT JOIN 運算可以用來建立右方外部聯結。右外部聯結包含兩個資料表中,第二個 (右側) 資料表的所有記錄,即使第一個 (左側) 資料表的記錄中沒有相符的值,情況也是如此。

例如,可以在 Departments (左側) 及 Employees (右側) 資料表中,使用 LEFT JOIN 來選取所有部門,包括未指定有員工的部門。若要選取所有員工,包括未指定到部門中的員工,可以使用 RIGHT JOIN。

下列範例示範如何根據 CategoryID 欄位來聯結 Categories 及 Products 資料表。查詢會產生所有類別的清單,其中包括沒有產品的類別:

SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

在此範例中,CategoryID 是聯結的欄位,但是由於其未包含在 SELECT 陳述式中,因此也不會包含在查詢結果中。若要包含聯結的欄位,請在 SELECT 陳述式中輸入欄位名稱,在此情況下為 Categories.CategoryID

附註: 

若要建立只包含聯結欄位中資料相同之記錄的查詢,請使用 INNER JOIN 運算。

  • 在 INNER JOIN 中可以巢狀方式使用 LEFT JOIN 或 RIGHT JOIN,但是在 LEFT JOIN 或 RIGHT JOIN 中卻不可以巢狀方式使用 INNER JOIN。如需在其他聯結內以巢狀方式使用聯結的詳細資訊,請參閱 INNER JOIN 主題中,有關巢狀的討論。

  • 您可以連結多個 ON 子句。如需如何執行此動作的詳細資訊,請參閱 INNER JOIN 主題中,有關子句連結的討論。

如果您嘗試加入包含備忘或 OLE 物件資料的欄位,就會發生錯誤。



附註: 機器翻譯免責聲明︰本文係以電腦系統翻譯而成,未經人為介入。Microsoft 提供此等機器翻譯旨在協助非英語系使用者輕鬆閱讀 Microsoft 產品、服務及技術相關內容。基於本文乃由機器翻譯而成,因此文中可能出現詞辭、語法、文法上之錯誤。

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×