排序資料行

您可以在 Power Query 中依一個資料行或多個資料行排序數據表。 例如,使用下表,其中包含名為 [競爭]、 [競爭對手] 和 [位置] 的數據行。

排序的範例源數據表。

包含 Competition、Competitor 和 Position 欄位的表格。 「Competition」欄在第 1 與第 6 列包含 1 - Opening,在第 3 與第 5 列包含 2 - Main,並在第 2 與第 4 列包含 3 - Final。 Position 數據列包含每個競賽值 1 或 2 的值。

在此範例中,目標是依 [競爭] 和 [位置] 字段以遞增順序排序此數據表。

排序之後的範例輸出數據表。

包含「競賽」、「競爭對手」和「位置」欄位的表格。 「Competition」欄在第 1 和第 2 列包含 1 - Opening,在第 3 和第 4 列包含 2 - Main,並在第 5 和第 6 列包含 3 - Final。 Position 數據列包含從上到下的值 1、2、1、2、1 和 2。

遞增排序會將欄中的文字資料依字母順序排序,先從 A 到 Z,再從 a 到 z。 遞減排序會將欄中的字母資料列依字母順序從 z 排到 a,接著從 Z 排到 A。例如,請查看下列未排序的資料欄:

包含具有隨機初始大寫之未排序字母名稱的數據行螢幕快照。

使用遞增排序時,字母欄會以下列方式排序:

資料欄螢幕快照,其中已排序的資料列包含字首大寫的 Alpha、Beta 和 Sierra,以及字首小寫的 alpha、gamma 和 zulu。

使用遞減排序時,字母欄會以下列方式排序:

欄位中已排序資料列的螢幕擷取畫面,其中 zulu、gamma 和 alpha 的開頭字母為小寫,而 Sierra、Beta 和 Alpha 的開頭字母為大寫。

依某一欄排序表格

若要依單一欄位排序表格,請先選擇該欄位。 接著從以下兩個地方之一選擇排序操作:

  • 在 [ 首頁 ] 索引標籤的 [排序 ] 群組中,有圖示可依遞增或遞減順序排序數據行。

    Power Query 功能區的螢幕快照,其中已選取 [首頁] 索引卷標,並強調排序群組。

  • 從欄標題下拉式選單中。 在資料列名稱旁邊有下拉選單指標 。 當您選取圖示時,會顯示排序數據行的選項。

    強調 [遞增排序] 和 [遞減排序] 選項的資料行標題下拉式功能表螢幕擷圖。

在這個例子中,請使用首頁分頁的排序群組按鈕來排序競賽欄位。此動作在「已套用步驟」區塊中建立一個名為「排序列」的新步驟。

Power Query 編輯器的螢幕擷取畫面,其中醒目提示了「套用的步驟」清單中的「已排序資料列」步驟。

在 競賽 下拉選單圖示中會新增一個指向向上的箭頭,顯示該欄正按升序排序。

按多個欄位排序表格

你可以同時依多個欄位排序。 Power Query 會依優先順序套用每一欄的排序,所以列會先依第一欄排序,接著是第二欄對與第一欄相符的列排序,依此類推。 定義多欄排序有兩種方式:從欄目選單,或從 排序 對話框。

使用欄位標題選單

延續前述範例,也將 位置 欄位依升序排序,這次使用 位置欄位標題 下拉選單。

[位置] 欄下拉式功能表中的排序命令螢幕擷取畫面。

這個動作不會新增一個新的 排序 列步驟,而是修改現有步驟,讓它能在同一步驟中執行兩種排序操作。 當你用這種方式排序多欄時,欄位排序的順序是根據欄位被選擇的順序來決定的。 一個視覺指示器會以數字顯示在下拉式選單指示器的左側,用來表示每個欄位在排序順序中的位置。

已排序欄位的螢幕擷取畫面,其中支援排序順序的數字已加以強調。

使用排序對話框

對於有超過幾個層級的排序,或你想一次查看並重新排序所有排序層級,請使用 排序 對話框取代欄目選單。

在 「主頁 」分頁,在 排序 群組中選擇 排序。

主頁分頁中排序群組的截圖,並強調排序按鈕。

如果你在開啟對話框前選取一個或多個欄位,Power Query 會自動依照你選擇的順序,將這些欄位加入排序層級。 否則,對話框會以單一空白關卡開啟。 例如 ,以下排序 對話框定義了在不同表格上的三層排序,先依 減法排序,再依 優先順序,再依 區域排序,依序遞減。

排序對話框的截圖,包含三個排序層級:減法上升、優先權上升和區域上升。

排序對話框會列出格子中所有排序層級:

  • 優先權:Power Query 依序從上到下套用每一層。 這個數字就是資料預覽中每個排序欄位標題旁邊顯示的數字。
  • 欄位:此等級所依據的欄位。 一欄一次只能在一關使用;其他關卡已使用的欄位不會出現在這個列表中。
  • 排序順序:排序的方向,例如 遞增(從最小到最大) 或 遞減(從最大到最小)。

要更改排序順序:

  • 選取 + 新增關卡,即可在現有關卡下方新增一個新的空白關卡。
  • 選擇關卡旁的 ... 選單來移除它,或將優先順序往上或往下移動。
  • 拖曳關卡所在的列,並將其放到新位置,即可直接調整順序。

每個關卡都需要先選擇 欄位 和 排序順序 ,才能選擇 確定。 如果有任何層級缺少選取,或兩個層級共用同一欄,Power Query 會阻擋排序並標示需要注意的層級。

選擇確定後,Power Query 會依照你定義的所有層級排序表格,並在每個已排序欄位的標題旁顯示優先順序,順序與對話框中的層級相同。

欄目截圖顯示優先順序為1(減法)、2(優先權)及3(區域)。

若要變更現有的多層排序,請選取 套用步驟中 已排序的資料列 步驟旁的齒輪圖示。 Power Query 會重新開啟排序對話框,裡面已經填滿所有已儲存的層級和排序順序。

清除欄位中的排序操作

執行下列其中一個動作:

  • 選取數據行標題旁的向下箭號,然後選取 [ 清除排序]。
  • 在套用的步驟中,選取已排序資料列步驟旁的齒輪圖示,以開啟排序對話方塊,然後移除所有層級。
  • 在 [查詢設定] 窗格的 [套用步驟] 中,刪除 [已排序的數據列] 步驟。