添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

群組及取消群組 資料表 記錄

Description

GroupBy 函式會傳回資料表,當中包含根據一個或多個 欄位 中的值群組在一起的記錄。 相同群組中的記錄會放入單一記錄,並新增含有其餘欄位之巢狀資料表的欄位。

Ungroup 函式會反轉 GroupBy 流程。 此函式會傳回資料表,將任何群組在一起的記錄分成個別的記錄。

您可以使用 GroupBy 來群組記錄、修改它所傳回之資料表,然後使用 Ungroup 取消群組已修改資料表中的記錄。 例如,您可以依照這種方法移除一組記錄︰

  • 使用 GroupBy 函式。
  • 使用 Filter 函式以移除整個記錄的群組。
  • 使用 Ungroup 函式。
  • 您也可以根據群組彙總結果︰

  • 使用 GroupBy 函式。
  • 搭配使用 AddColumns 函式與 Sum Average 和其他彙總函式來新增新的欄位,也就是群組資料表的彙總。
  • 使用 DropColumns 函式來卸除資料表群組。
  • Ungroup 會嘗試保留已傳送至 GroupBy 之記錄的原始順序。 並非永遠可能 (例如,如果原始資料表包含 空白 記錄)。

    資料表是 Power Apps 中的值,如同字串或數字。 您可以將資料表指定為函式的引數,而函式可傳回資料表。 GroupBy Ungroup 不會修改資料表,而是將資料表作為引數,並傳回不同的資料表。 請參閱 使用資料表 以取得詳細資料。

    在 Power Apps 版本 3.24042 之前,欄名稱是透過使用雙引號的文字字串指定的,如果連接到資料來源,它們也需要是邏輯名稱。 例如,使用雙引號的邏輯名稱 "cr43e_name" ,而不是不含引號的顯示名稱 Name 。 對於包含帶有空格的欄名稱的 SharePoint 和 Excel 資料來源,每個空格均以 「_x0020_」 指定,例如 「欄名稱」 「Column_x0020_Name」 。 在此版本之後,所有應用程式都會自動更新為本文中所述的新語法。

    GroupBy ( Table , ColumnName1 [, ColumnName2 , ... ], GroupColumnName )

    Table – 必要。 要群組的資料表。 ColumnName(s) - 必要項目。 用來群組記錄之 資料表 中的欄位名稱。 這些欄位在結果資料表中會成為欄位。 GroupColumnName - 必要項目。 不在 ColumnName(s) 的記錄資料儲存體的欄位名稱。 Ungroup ( Table , GroupColumnName )

    Table – 必要。 要取消群組的資料表。 GroupColumnName - 必要項目。 包含使用 GroupBy 函式設定的記錄資料之欄位。
  • 新增按鈕,並設定其 Text 屬性,讓按鈕顯示 Original
  • Original 按鈕的 OnSelect 屬性設為以下公式:
  • ClearCollect( CityPopulations,
        { City: "London",    Country: "United Kingdom", Population: 8615000},
        { City: "Berlin",    Country: "Germany",        Population: 3562000},
        { City: "Madrid",    Country: "Spain",          Population: 3165000},
        { City: "Rome",      Country: "Italy",          Population: 2874000},
        { City: "Paris",     Country: "France",         Population: 2273000},
        { City: "Hamburg",   Country: "Germany",        Population: 1760000},
        { City: "Barcelona", Country: "Spain",          Population: 1602000},
        { City: "Munich",    Country: "Germany",        Population: 1494000},
        { City: "Milan",     Country: "Italy",          Population: 1344000}
    
  • 按住 Alt 鍵並選取 Original 按鈕。

    您剛剛建立 集合物件,命名為 CityPopulations,其中包含此資料︰

  • 將此按鈕的 OnSelect 屬性設為下列公式:

    ClearCollect( CitiesByCountry, GroupBy( CityPopulations, Country, Cities ) )

  • 按住 Alt 鍵並選取 Group 按鈕。

    您剛剛建立了集合,命名為 CitiesByCountry,其中前一個集合的記錄會由 Country 欄位群組。

  • 將此按鈕的 OnSelect 屬性設為下列公式:

    ClearCollect( CitiesByCountryFiltered, Filter( CitiesByCountry, "e" in Country ) )

  • 按住 Alt 鍵時,選取您新增的按鈕。

    您剛剛建立了第三個集合,命名為 CitiesByCountryFiltered,只包含名稱中具有 "e" 的國家/地區 (也就不是西班牙或義大利)。

  • 將此按鈕的 OnSelect 屬性設為下列公式:

    ClearCollect( CityPopulationsUngrouped, Ungroup( CitiesByCountryFiltered, Cities ) )

    這可能會導致︰

  • "Sum" 按鈕的 OnSelect 屬性設為下列公式:

    ClearCollect( CityPopulationsSum, AddColumns( CitiesByCountry, 'Sum of City Populations', Sum( Cities, Population ) ) )

    這可能會導致︰

    AddColumns 會以基礎 CitiesByCountry 集合物件開始,並新增新欄位 Sum of City Populations。 此欄位的值是根據公式 Sum( Cities, Population ) 逐列計算。 AddColumns 會提供每一列 Cities 欄位 (資料表) 的值,而 Sum 會合計這個子資料表每一個資料列的 Population

    既然我們擁有我們想要的總和,我們可以使用 DropColumns 來移除子資料表。

  • 新增另一個按鈕,並設定其 Text 屬性,讓按鈕顯示 SumOnly

  • "SumOnly" 按鈕的 OnSelect 屬性設定為下列公式:

    ClearCollect( CityPopulationsSumOnly, DropColumns( CityPopulationsSum, Cities ) )

    這可能會導致︰

    即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:https://aka.ms/ContentUserFeedback

    提交並檢視相關的意見反應

  •