次の方法で共有


GROUPBY

適用対象:計算列計算テーブルMeasureビジュアル計算

手記

この関数は、意味のない結果を返す可能性があるため、視覚的な計算 使用することはお勧めしません。

GROUPBY 関数は、SUMMARIZE 関数に似ています。 ただし、GROUPBY は、追加するすべての拡張列に対して暗黙的な not を実行 CALCULATE。 GROUPBY では、追加する拡張列の集計関数内で新しい関数 (CURRENTGROUP) を使用できます。 GROUPBY は、1 つのテーブル スキャンで複数の集計を実行するために使用されます。

構文

GROUPBY (<table> [, <groupBy_columnName> [, <groupBy_columnName> [, …]]] [, <name>, <expression> [, <name>, <expression> [, …]]])

パラメーター

用語 定義
table データのテーブルを返す任意の DAX 式。
groupBy_columnName データをグループ化するテーブル内の既存の列の名前 (or テーブル内のrelated)。 このパラメーターを式にすることはできません。
name 二重引用符で囲まれた GroupBy 列の一覧に追加される新しい列に指定された名前。
expression first 引数が CURRENTGROUPされている X 集計関数の 1 つ ()。 サポートされている X 集計関数の完全な一覧については、後述の「CURRENTGROUP」セクションを参照してください。

value を返す

名前引数で指定された拡張列 and groupBy_columnName引数に対して選択された列を含むテーブル。

備考

  • GROUPBY 関数は次の処理を行います。

    1. 指定したテーブル ("to-one" 方向のテーブルandallrelated) から開始します。

    2. all 列の GroupBy を使用してグループ化を作成します (手順 1. の表に存在する必要があります)。

    3. 各グループは結果の 1 行ですが、元のテーブル内の行のセットを表します。

    4. グループごとに、追加する拡張列を evaluate します。 SUMMARIZE 関数とは異なり、暗黙的な CALCULATE が実行 not、グループが and コンテキストに配置されない filter。

  • 名前を define する各列には、対応する式が必要です。それ以外の場合は、error が返されます。 first 引数 name は、結果の列の名前を定義します。 second 引数式は、その列の各行の value を取得するために実行される計算を定義します。

  • groupBy_columnName は、or テーブル内のテーブル related のいずれかである必要があります。

  • 各名前は二重引用符で囲む必要があります。

  • この関数は、選択した一連の行を、1 つの values groupBy_columnName列の or によって、一連のサマリー行にグループ化します。 グループごとに 1 行が返されます。

  • GROUPBY は主に、DAX テーブル式の中間結果に対して集計を実行するために使用されます。 モデル内の物理テーブルに対して効率的な集計を行う場合は、SUMMARIZECOLUMNSorSUMMARIZE 関数の使用を検討してください。

  • この関数は、行レベル セキュリティ (RLS) 規則 not 計算列で使用する場合に、DirectQuery モードで使用するためにサポート or。

CURRENTGROUP

CURRENTGROUP は、GROUPBY 関数内の拡張列を定義する式でのみ使用できます。 in-effectCURRENTGROUP、GROUPBY 結果の現在の行に属する GROUPBY のテーブル引数から行のセットを返します。 CURRENTGROUP 関数は、and、first、AVERAGEXCOUNTAXCOUNTXGEOMEANXMAXXMINXPRODUCTXSTDEVX.SSTDEVX.PSUMXのいずれかの集計関数の VARX.S 引数としてのみサポート VARX.P 引数を受け取っていません。

次の例 first では、and 関数を使用して、物理テーブルに対して国 productSUMMARIZECOLUMNS カテゴリ別にグループ化された売上合計を計算します。 次に、GROUPBY 関数を使用して、first ステップの中間結果をスキャンし、find カテゴリ全体の各国の最大売上を product します。

DEFINE
VAR SalesByCountryAndCategory =
SUMMARIZECOLUMNS(
Geography[Country],
Product[Category],
"Total Sales", SUMX(Sales, Sales[Price] * Sales[Qty])
)

EVALUATE
GROUPBY(
SalesByCountryAndCategory,
Geography[Country],
"Max Sales", MAXX(CURRENTGROUP(), [Total Sales])
)

SUMMARIZE 関数SUMMARIZECOLUMNS 関数