SUMMARIZE
グループのセットについて要求された合計のサマリー テーブルを返します。
構文
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
パラメーター
用語 | 定義 |
---|---|
table |
データのテーブルを返す任意の DAX 式。 |
groupBy_ColumnName |
(省略可能)概要グループの作成に使用される既存の列の修飾名。その中に見つかった値に基づいています。 このパラメーターを式にすることはできません。 |
name |
合計列または集計列に指定された名前を二重引用符で囲みます。 |
expression |
1 つのスカラー値を返す任意の DAX 式。式は (行/コンテキストごとに) 複数回評価されます。 |
戻り値
groupBy_columnName
引数に対して選択された列と、名前引数によって設計された集計列を含むテーブル。
解説
名前を定義する各列には、対応する式が必要です。それ以外の場合は、エラーが返されます。 最初の引数 name は、結果の列の名前を定義します。 2 番目の引数式は、その列の各行の値を取得するために実行される計算を定義します。
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を使用すると、ISSUBTOTALの引数として指定された列の小計値が行に含まれている場合は True を返し、それ以外の場合は False を返す、SUMMARIZE 式に別の列を作成できます。 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 |