共用方式為


左反聯結

Power Query 中 [合併 ] 對話框中可用的其中一種 聯結類型是左反聯結,它只會從左數據錶帶入沒有右數據表中任何相符數據列的數據列。 詳細資訊: 合併作業概觀

左反聯結範例。

圖表顯示具有 Date、CountryID 和 Units 數據行的左數據表。 強調的 CountryID 資料行包含數據列 1 和 2、第 3 列 3 中的值,以及第 4 列中的 2。 右數據表包含標識碼和國家/地區數據行。 強調的標識符數據行包含第 1 列 3 的值(表示巴拿馬),第 2 列則包含 4 個值(表示西班牙)。 前兩個數據表下方的表格包含 Date、CountryID、Units 和 Country 數據行。 數據表有三個數據列,其中兩個數據列包含 CountryID 1 的數據,以及 CountryID 2 的數據列。 由於其餘的 CountryID 都不符合右數據表中的任何國家/地區,因此合併數據表中 Country 數據行中的數據列全都包含 null。

本文使用範例數據來示範如何使用左反聯結來執行合併作業。 此範例的範例源資料表包括:

  • 銷售:此數據表包含 [日期]、[國家/地區標識符] 和 [單位] 字段CountryID 是代表 Country 數據表中唯一標識碼的整數值。

    包含 Date、CountryID 和 Units 數據行之銷售數據表的螢幕快照,CountryID 設定為 1 和 2、第 3 列 3 中的 3,以及數據列 4 中的 2。

  • 國家/地區:此數據表是字段標識符Country參考數據表。 標識符欄位代表每個記錄的唯一標識碼。

    [國家/地區] 數據表的螢幕快照,其中標識符設定為第 1 列 3,第 2 列 4,第 2 列設定為巴拿馬,第 2 列為西班牙。

在此範例中,您會合併這兩個數據表,並將 Sales 數據表合併為左數據表,並將 Countries 數據表合併為右數據表。 下列數據行之間會建立聯結。

Sales 數據表中的欄位 [國家/地區] 數據表中的欄位
CountryID 識別碼

目標是建立如下的數據表,其中只會保留與右數據表中任何不相符之左邊數據表的數據列。

左反聯結最終數據表。

左側反聯結最終數據表的螢幕快照,其中 Date、CountryID、Units 和 Country 數據行標頭,以及三個數據列,其中 Country 數據行的值全都是 Null。

若要執行左反聯結:

  1. 選取 [ 銷售 ] 查詢,然後選取 [ 合併查詢]。
  2. 在 [合併] 對話框的 [右數據表] 底,選取 [國家/地區]。
  3. 在 Sales 數據表中,選取 CountryID 數據行。
  4. 在 [ 國家/地區] 數據表中,選取 [ 標識符 ] 數據行。
  5. 在 [ 聯結種類 ] 區段中,選取 [左反]。
  6. 選取 [確定]。

[合併] 對話框的螢幕快照,其中顯示遵循上一個左方反聯結程序的結果。

提示

請仔細查看對話框底部的訊息,其中顯示「選取範圍會從第一個數據表選取 4 個數據列的 3 個數據列」。此訊息對於瞭解您從這項作業取得的結果至關重要。

在 Sales 數據表中,您有兩個 CountryID 的實例為 1,而 CountryID 的一個實例為 2,但在 Country 數據表中找不到兩個實例 因此,比對在左(第一個) 數據表中找到四個數據列中的三個。

在 [國家/地區] 數據表中,您有標識符為 3 的巴拿馬國家/地區,因此不會將記錄帶入 Sales 數據表中,因為數位相符。 此外,您有標識碼為 4 的國家/地區西班牙,但在 Sales 數據表中沒有 CountryID 4 的記錄。 因此,右(第二個) 數據表的兩個數據列都不會帶入 Sales 數據表。

從新建立的 [國家/地區] 數據行,展開 [國家/地區] 字段。 請勿選取 [ 使用原始數據行名稱作為前置 詞] 複選框。

[展開] 對話框的螢幕快照,其中只選取 [國家/地區] 數據行。

執行這項作業之後,您建立了看起來像下圖的數據表。 新展開 的 Country 字段沒有任何值,因為左反聯結不會從右數據錶帶入任何值,它只會保留左數據表的數據列。

左反聯結的最終數據表。

具有 Date、CountryID、Units 和 Country 數據行標頭,以及三個數據列之最終數據表的螢幕快照。 Country 數據行的值全都是 Null。