SUMMARIZE
グループのセットについて要求された合計のサマリー テーブルを返します。
構文
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
パラメーター
用語 | 定義 |
---|---|
テーブル | データのテーブルを返す任意の DAX 式。 |
groupBy_ColumnName | (省略可能) 既存の列の修飾名。これは、その列で見つかった値に基づいてサマリー グループを作成するために使用されます。 このパラメーターを式にすることはできません。 |
name | 合計列または集計列に指定された名前。二重引用符で囲みます。 |
expression | 1 つのスカラー値を返す任意の DAX 式。式は、複数回評価されます (行/コンテキストごと)。 |
戻り値
groupBy_columnName 引数用に選択された列と、name 引数で指定された集計列を含むテーブル。
解説
名前を定義する各列には、対応する式が必要です。そうでない場合は、エラーが返されます。 最初の引数 name では、結果の列の名前を定義します。 2 番目の引数 expression では、その列の各行の値を取得するために実行される計算を定義します。
groupBy_columnName は、table または table に関連するテーブルに存在する必要があります。
各 name は二重引用符で囲む必要があります。
この関数を使用すると、選択した一連の行が、1 つ以上の groupBy_columnName 列の値によって一連の概要行にグループ化されます。 グループごとに 1 行が返されます。
この関数は、計算列または行レベルのセキュリティ (RLS) ルールで使用される場合、DirectQuery モードでの使用はサポートされません。
例
次の例では、カレンダー年度と製品カテゴリ名に関してグループ化された再販業者の売上の概要を返します。この結果テーブルでは、再販業者の売上を年度および製品カテゴリ別に分析することができます。
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
次の表は、テーブルを受け取ることが想定されている関数が受け取るデータのプレビューを示しています。
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | Bikes | 12968255.42 | 36167.6592 |
2005 | Bikes | 6958251.043 | 4231.1621 |
2006 | Bikes | 18901351.08 | 178175.8399 |
2007 | Bikes | 24256817.5 | 276065.992 |
2008 | コンポーネント | 2008052.706 | 39.9266 |
2005 | コンポーネント | 574256.9865 | 0 |
2006 | コンポーネント | 3428213.05 | 948.7674 |
2007 | コンポーネント | 5195315.216 | 4226.0444 |
2008 | Clothing | 366507.844 | 4151.1235 |
2005 | Clothing | 31851.1628 | 90.9593 |
2006 | Clothing | 455730.9729 | 4233.039 |
2007 | Clothing | 815853.2868 | 12489.3835 |
2008 | Accessories | 153299.924 | 865.5945 |
2005 | Accessories | 18594.4782 | 4.293 |
2006 | Accessories | 86612.7463 | 1061.4872 |
2007 | Accessories | 275794.8403 | 4756.6546 |
ROLLUP を使用する場合
ROLLUP 構文を追加すると、groupBy_columnName 列の結果にロールアップ行が追加され、SUMMARIZE の動作が変更されます。 ROLLUP は、SUMMARIZE 式内でのみ使用できます。
例
次の例では、SUMMARIZE 関数呼び出しの Group-By 列にロールアップ行を追加しています。
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
次のテーブルが返されます。
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | Bikes | 12968255.42 | 36167.6592 |
2005 | Bikes | 6958251.043 | 4231.1621 |
2006 | Bikes | 18901351.08 | 178175.8399 |
2007 | Bikes | 24256817.5 | 276065.992 |
2008 | コンポーネント | 2008052.706 | 39.9266 |
2005 | コンポーネント | 574256.9865 | 0 |
2006 | コンポーネント | 3428213.05 | 948.7674 |
2007 | コンポーネント | 5195315.216 | 4226.0444 |
2008 | Clothing | 366507.844 | 4151.1235 |
2005 | Clothing | 31851.1628 | 90.9593 |
2006 | Clothing | 455730.9729 | 4233.039 |
2007 | Clothing | 815853.2868 | 12489.3835 |
2008 | Accessories | 153299.924 | 865.5945 |
2005 | Accessories | 18594.4782 | 4.293 |
2006 | Accessories | 86612.7463 | 1061.4872 |
2007 | Accessories | 275794.8403 | 4756.6546 |
2008 | 15496115.89 | 41224.3038 | |
2005 | 7582953.67 | 4326.4144 | |
2006 | 22871907.85 | 184419.1335 | |
2007 | 30543780.84 | 297538.0745 | |
76494758.25 | 527507.9262 |
ROLLUPGROUP を使用する場合
ROLLUP 構文内に ROLLUPGROUP を追加すると、ロールアップ行に部分的な小計が表示されなくなります。 ROLLUPGROUP は、ROLLUP 式、ROLLUPADDISSUBTOTAL 式、または ROLLUPISSUBTOTAL 式内でのみ使用できます。
例
次の例では、すべてのカテゴリでの各年の小計を表示することなく、すべての年およびカテゴリの総計のみを表示します。
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
次のテーブルが返されます。
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | Bikes | 12968255.42 | 36167.6592 |
2005 | Bikes | 6958251.043 | 4231.1621 |
2006 | Bikes | 18901351.08 | 178175.8399 |
2007 | Bikes | 24256817.5 | 276065.992 |
2008 | コンポーネント | 2008052.706 | 39.9266 |
2005 | コンポーネント | 574256.9865 | 0 |
2006 | コンポーネント | 3428213.05 | 948.7674 |
2007 | コンポーネント | 5195315.216 | 4226.0444 |
2008 | Clothing | 366507.844 | 4151.1235 |
2005 | Clothing | 31851.1628 | 90.9593 |
2006 | Clothing | 455730.9729 | 4233.039 |
2007 | Clothing | 815853.2868 | 12489.3835 |
2008 | Accessories | 153299.924 | 865.5945 |
2005 | Accessories | 18594.4782 | 4.293 |
2006 | Accessories | 86612.7463 | 1061.4872 |
2007 | Accessories | 275794.8403 | 4756.6546 |
76494758.25 | 527507.9262 |
ISSUBTOTAL を使用する場合
ISSUBTOTAL を使用すると、SUMMARIZE 式で別の列を作成できます。この式は、ISSUBTOTAL の引数として指定された列の小計値が行に含まれる場合は True を返し、それ以外の場合は False を返します。 ISSUBTOTAL は、SUMMARIZE 式内でのみ使用できます。
例
次のサンプルでは、指定された SUMMARIZE 関数呼び出しで、各 ROLLUP 列に対して ISSUBTOTAL 列が生成されます。
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
, "Is Sub Total for DateTimeCalendarYear", ISSUBTOTAL(DateTime[CalendarYear])
, "Is Sub Total for ProductCategoryName", ISSUBTOTAL(ProductCategory[ProductCategoryName])
)
次のテーブルが返されます。
[Is Sub Total for DateTimeCalendarYear] | [Is Sub Total for ProductCategoryName] | DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|---|---|
false | FALSE | ||||
FALSE | false | 2008 | Bikes | 12968255.42 | 36167.6592 |
false | false | 2005 | Bikes | 6958251.043 | 4231.1621 |
FALSE | false | 2006 | Bikes | 18901351.08 | 178175.8399 |
false | false | 2007 | Bikes | 24256817.5 | 276065.992 |
false | false | 2008 | コンポーネント | 2008052.706 | 39.9266 |
false | false | 2005 | コンポーネント | 574256.9865 | 0 |
false | false | 2006 | コンポーネント | 3428213.05 | 948.7674 |
false | false | 2007 | コンポーネント | 5195315.216 | 4226.0444 |
false | false | 2008 | Clothing | 366507.844 | 4151.1235 |
false | false | 2005 | Clothing | 31851.1628 | 90.9593 |
false | false | 2006 | Clothing | 455730.9729 | 4233.039 |
false | false | 2007 | Clothing | 815853.2868 | 12489.3835 |
false | false | 2008 | Accessories | 153299.924 | 865.5945 |
false | false | 2005 | Accessories | 18594.4782 | 4.293 |
false | false | 2006 | Accessories | 86612.7463 | 1061.4872 |
false | false | 2007 | Accessories | 275794.8403 | 4756.6546 |
false | TRUE | ||||
FALSE | true | 2008 | 15496115.89 | 41224.3038 | |
false | true | 2005 | 7582953.67 | 4326.4144 | |
false | true | 2006 | 22871907.85 | 184419.1335 | |
false | true | 2007 | 30543780.84 | 297538.0745 | |
TRUE | true | 76494758.25 | 527507.9262 |