共用方式為


HOW TO:建立外部聯結

根據預設,查詢和檢視表設計工具會在資料表間建立內部聯結。當要將資料列包含在結果集中,而這個結果集和聯結資料表中的資料都不相符時,即可以建立外部聯結。

在建立外部聯結時,資料表在 SQL 陳述式中出現的順序 (如 [SQL] 窗格所反映) 非常重要。您加入的第一個資料表會成為「左」資料表,第二個資料表會成為「右」資料表 (資料表出現在 [圖表] 窗格的實際順序並不重要)。 在指定左或右外部聯結時,是指這些資料表加入查詢時的順序,以及它們出現在 SQL 窗格的 SQL 陳述式中的順序。

注意事項注意事項

您的電腦可能會在下列說明中,以不同名稱或位置顯示某些 Visual Studio 使用者介面項目。您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。如需詳細資訊,請參閱 Visual Studio 設定

若要建立外部聯結

  1. 自動或手動建立聯結。如需詳細資訊,請參閱 HOW TO:自動聯結資料表HOW TO:手動聯結資料表

  2. 當要包含某資料表的額外資料列時,選取 [圖表] 窗格中的聯結線,然後從 [查詢設計工具] 功能表選擇 [選取 <tablename> 中所有的資料列],以選取包含該資料表的命令。

    • 選擇第一個資料表以建立左外部聯結。

    • 選擇第二個資料表以建立右外部聯結。

    • 選擇兩個資料表以建立完整外部聯結。

      注意事項注意事項

      某些資料庫 (例如,Oracle) 不支援完整外部聯結。

在指定外部聯結時,[查詢和檢視表設計工具] 會修改聯結線以指出外部聯結。

此外,[查詢和檢視表設計工具] 會修改 [SQL] 窗格中的 SQL 陳述式,以反映聯結類型的變更,如下列陳述式所示:

SELECT employee.job_id, employee.emp_id,
   employee.fname, employee.minit, jobs.job_desc
FROM employee LEFT OUTER JOIN jobs ON 
    employee.job_id = jobs.job_id

因為外部聯結包含不符的資料列,因此可以用它來尋找違反外部索引鍵條件約束的資料列。若要如此,可以建立外部聯結,然後加入搜尋條件,以尋找最右方資料表中主索引鍵資料行為 null 的資料列。例如,下列外部聯結會找出 employee 資料表中的資料列,該資料表和 jobs 資料表沒有相對應的資料列:

SELECT employee.emp_id, employee.job_id
FROM employee LEFT OUTER JOIN jobs 
   ON employee.job_id = jobs.job_id
WHERE (jobs.job_id IS NULL)

請參閱

參考

聯結對話方塊

其他資源

使用聯結進行查詢