在用於任何 FROM 子句中時,合併來源資料表記錄。

語法

FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1compopr table2.field2

LEFT JOIN 和 RIGHT JOIN 運算由下列各部分組成:

部分

描述

table1, table2

結合記錄的來源資料表名稱。

field1, field2

連接欄位的名稱。 欄位必須有相同資料類型且含有相同種類的資料,但是不必有相同名稱。

compopr

任何關聯性比較運算子:"="、"<"、">"、"<="、">=" 或 "<>"。


備註

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

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

例如,您可以在 [部門] (左方) 和 [員工] (右方) 資料表中使用 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 運算。

  • LEFT JOIN 或 RIGHT JOIN 能以巢狀方式置於 INNER JOIN 中,但 INNER JOIN 則無法以巢狀方式置於 LEFT JOIN 或 RIGHT JOIN 中。 請參閱 INNER JOIN 主題中的巢狀包含相關探討,了解如何在其他聯結內巢狀聯結。

  • 您可以連結多個 ON 子句。 請參閱 INNER JOIN 主題中的子句連結相關探討,了解其做法。

如果您嘗試聯結含有 [備忘] 或 [OLE 物件] 資料的欄位,則會發生錯誤。



Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×