使用清單、記錄或表格結構化欄位 (Power Query)

套用到
Microsoft 365 Excel Excel 2024 Excel 2021 Excel 2019 Excel 2016

對於結構化欄位,如 ListRecordTable,欄位會與相關值相關聯。 結構化欄位在欄位標頭中有一個展開圖示 展開欄位 圖示

關於結構化柱

結構化柱有三種類型:

  • 列表 儲存一串值,例如 {1, 2, 5, 10 } 或 {“hello”、“hi”、“goodbye” }。 List 在儲存 格中的值 是最簡單的結構化欄位,且沒有資料表關聯。
  • 戰績 儲存一組已命名欄位,將其分組為一個單元。 例如,[ 名字 = 「Joe」,姓氏 = 「Smith」,出生日期 = 2010 #date (,1,2) ]。 儲存格中的 Record 值表示與目前或主要資料表有一對一的關係。
  • 表格 儲存一個與目前資料有次要關聯的表,該資料是主要資料表。 儲存格中 Table 的值表示與目前或主要資料表的一對多關係。

記錄表格結構化欄位代表資料來源中的關係,該關係具有關聯模型,例如在 OData 資料饋送中具有外鍵關聯的實體,或在 SQL Server 資料庫中擁有外鍵關係。

關於展開表格結構欄位

您可以使用 「展開展開」欄位圖示 圖示,查看相關表格中的欄位。 例如,在訂單表中,展開操作會將與訂單表相關的Order_Details紀錄合併,以將訂單行項與每個訂單合併。 展開操作會將主資料表擴大,以包含次要及相關資料表的欄位。 舉例來說:

主表有 欄AB

資料行 A 和 B

相關表格的欄位 為 C

資料行 A、B 以及關聯的 C

展開操作會將主表擴大至包含欄位 C ,並展開包含包含欄位 C 的次要及相關資料表中相關值的主資料表。

ABC

總結來說,當你展開一個 Table 結構化欄位時,這些值會與其他欄位一同顯示在資料預覽中。 欲了解更多關於合併主要資料表及相關資料表的資訊,請參閱 「學習合併多個資料來源」。 

展開表格結構欄位

在此範例中,展開操作將 訂單 表擴大至包含 Order_Details.ProductIDOrder_Details.UnitPriceOrder_Details.Quantity 欄位,以整合主要資料表 的訂單 列與相關 Order_Details 列。

範例結構化資料表資料

  1. 要開啟查詢,請先找到先前從 Power Query 編輯器載入的查詢,選取資料中的一個儲存格,然後選擇查詢>編輯。 更多資訊請參閱 「在 Excel 中建立、載入或編輯查詢」。

    查詢必須至少有兩個資料表以關聯方式連接。 欲了解更多資訊,請參閱 合併查詢。 

  1. 點擊結構化欄位欄目中的展開圖示 () 展開

  2. 在「 欄位名稱 」下拉選單中,選擇你想要的欄位,並清除不想要的欄位。 

    選取資料行名稱

  3. 選取 [確定]

結果

表格現在為步驟 3 中選擇的每一欄新增一欄。 

展開結構化表格欄位的結果

展開記錄結構化欄位

當你展開 記錄 結構化欄位時,這些值會在資料預覽中以新欄位顯示。 如果你不展開它,然後將查詢載入工作表,你會看到欄位中每個儲存格的佔位值為 [Record]。

  1. 要開啟查詢,請先找到先前從 Power Query 編輯器載入的查詢,選取資料中的一個儲存格,然後選擇查詢>編輯。 更多資訊請參閱 「在 Excel 中建立、載入或編輯查詢」。

  2. 若要在不展開欄位的情況下查看特定值,請在結構化欄位中選擇一個具有 Record 值的值。 例如:

    展開記錄複雜區欄位

  3. 在結構化欄位的欄首中選擇展開圖示 (展開 ) 。

  4. 在「 欄位名稱 」下拉選單中,選擇你想要的欄位,並清除不想要的欄位。

    點擊展開可進入結構化記錄欄位

  5. 選取 [確定]

結果

表格現在為步驟 4 中所選的每一欄新增一欄。 

擴展結構化紀錄欄的結果

展開列表結構欄位

當你展開一個 List 結構化欄位時,這些值會在資料預覽中以新欄位顯示。 如果你不展開它,然後將查詢載入工作表,你會看到欄位中每個儲存格的佔位值為 [List]。

  1. 要開啟查詢,請先找到先前從 Power Query 編輯器載入的查詢,選取資料中的一個儲存格,然後選擇查詢>編輯。 更多資訊請參閱 「在 Excel 中建立、載入或編輯查詢」。

  2. 若要在不展開欄位的情況下查看特定值,請在結構化欄位中選擇具有 List 值的值。 例如:

    展開列表複數欄位

  3. 在結構化欄位的欄首中選擇展開圖示 (展開 ) 。

  4. 執行下列其中一個動作:

    • 要為每個列表值建立一列,請選擇 展開至新列
    • 若要建立以分隔符分隔的文字值清單,請選擇 「擷取值」。
  5. 選取 [確定]

展開到新列的結果

將結構化清單欄位擴充為列的結果

帶有分號 (;) 作為分隔符的萃取值結果

透過用分隔符提取數值展開結構化清單欄位的結果

在結構化欄位群組中使用指令

你可以在 Power Query 編輯器功能區使用以下額外指令來處理結構化欄位:

  1. 選擇 Home>Transform ,然後在 結構化欄位 群組中選擇以下指令之一。
    擴展 將結構化欄位 (清單、記錄或表格) ,轉化為目前查詢資料表中的新欄位與列。 這個指令和 「展開展開」 圖示是一樣的。

    總體透過彙總函數(包括 Sum 和 Count)來彙總 Table 結構欄位中的數值。 此指令與選擇「展開展開」圖示,然後在欄名下拉選單中選擇「聚合」相同。 它僅適用於 表格 結構欄位。

    萃取值 透過將結構化 List 欄位的值,透過指定的分隔符將它們合併成單一文字值,擷取它們。

你也可以在數字欄位群組中使用統計指令 (選擇>轉換統計) 並搭配表格結構欄位。 它擁有與 Power Query 編輯器功能區中 Transform context 標籤中 List 工具下 Numeric List 群組中 Statistics 指令相同的彙總函式列表。

使用「轉換上下文」標籤

你可以使用 Drill Down 指令,在 Power Query 編輯器功能區的清單工具下顯示「轉換上下文」標籤,並顯示更多用於結構化欄位的指令。 不要將此轉換分頁與 Power Query 編輯器功能區中常見的另一個轉換分頁混淆。

  1. 右鍵點擊欄位標頭,然後選擇 「向下鑽孔」。
  2. 要將 清單記錄 轉換成表格,請在 列表工具中選擇「 轉換為>表格」。
  3. 要保留頂部、底部或多個項目,請在 清單工具中選擇 「轉換>保留物品」。
  4. 要移除頂部、底部或替代項目,請在 列表工具中選擇 「轉換>移除項目」。
  5. 要移除重複值,請在清單工具中選擇「轉換>移除重複」。 更多資訊請參見 「保留或移除重複列」。
  6. 要反轉項目,請在 清單工具中選擇 「轉換>反向項目」。
  7. 要排序資料,在 List Tools 中,選擇 Excel 中的 「Sort A-Increasing到 Z」指令,該指令會將 A 排序到 Z,或從最小數排序到最大 ,或在 Excel 中選擇從 Z 降到 A 的指令,將 Z 排序到 A 或最大數排序到最小 。 欲了解更多資訊,請參閱 排序資料
  8. 要顯示各種統計數據,請在列表工具中選擇「轉換>統計」。 可用統計數據包括:總和最小值、最大值、中位數平均值、Standard偏差計數值計數不同值。 欲了解更多資訊,請參閱「 從欄位彙整資料」。

另請參閱

適用於 Excel 的 Power Query 說明

合併查詢

分組或總結列 (docs.com)