SUMMARIZE 함수(DAX)
한 그룹 집합에 대해 요청된 합계의 요약 테이블을 반환합니다.
구문
SUMMARIZE(<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
매개 변수
table
데이터 테이블을 반환하는 DAX 식입니다.groupBy_columnName
(선택 사항) 찾은 값을 기반으로 요약 그룹을 만드는 데 사용할 기존 열의 정규화된 이름입니다. 이 매개 변수는 식일 수 없습니다.name
합계 또는 요약 열에 대해 지정된 큰따옴표로 묶인 이름입니다.expression
단일 스칼라 값을 반환하는 모든 DAX 식입니다. 식은 각 행/컨텍스트에 대해 여러 번 계산됩니다.
반환 값
groupBy_columnName 인수에 대해 선택된 열 및 name 인수로 디자인된 요약 열을 포함하는 테이블입니다.
주의
이름을 정의하는 각 열에는 해당 식이 포함되어야 합니다. 그렇지 않으면 오류가 반환됩니다. 첫 번째 인수인 name은 결과에서 열 이름을 정의합니다. 두 번째 인수인 expression은 해당 열의 각 행에 대한 값을 가져오기 위해 수행되는 계산을 정의합니다.
groupBy_columnName은 table 또는 table에 대한 관련 테이블에 있어야 합니다.
각 이름은 큰따옴표로 묶어야 합니다.
이 함수는 선택한 행 집합을 하나 이상의 groupBy_columnName 열 값에 따라 요약 행 집합으로 그룹화합니다. 각 그룹에 대해 행 하나가 반환됩니다.
예
다음 예에서는 달력 연도 및 제품 범주 이름에 따라 그룹화된 대리점 판매 요약을 반환합니다. 이 결과 테이블에서는 연도 및 제품 범주에 따라 대리점 판매에 대한 분석을 수행할 수 있습니다.
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 |
고급 SUMMARIZE 옵션
SUMMARIZE에 ROLLUP 사용
ROLLUP() 구문이 추가되어 groupBy_columnName 열의 결과에 롤업 행을 추가하도록 SUMMARIZE 함수의 동작이 수정되었습니다.
SUMMARIZE(<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, ROLLUP(<groupBy_columnName>[,< groupBy_columnName>…])][, <name>, <expression>]…)
ROLLUP 매개 변수
- groupBy_columnName
찾은 값을 기반으로 요약 그룹을 만드는 데 사용할 기존 열의 정규화된 이름입니다. 이 매개 변수는 식일 수 없습니다.
참고: 다른 모든 SUMMARIZE 매개 변수는 이전에 설명되었으므로 편의상 여기에서 다시 설명하지 않습니다.
설명
- ROLLUP 식에서 언급한 열은 groupBy_columnName 열의 일부로 참조될 수 없습니다.
예제
다음 예에서는 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
ROLLUPGROUP()은 부분합 그룹을 계산하는 데 사용될 수 있습니다. ROLLUP의 전체를 사용할 경우 ROLLUPGROUP은 groupBy_columnName 열의 결과에 롤업 행을 추가하여 동일한 결과를 반환합니다. 그러나 ROLLUP 구문 내부의 ROLLUPGROUP() 추가는 롤업 행에서 일부 부분합을 방지하는 데 사용될 수 있습니다.
다음 예에서는 모든 연도의 총합계 및 모든 범주에서 각 연도의 부분합이 없는 범주만 보여 줍니다.
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 |
SUMMARIZE에 ISSUBTOTAL 사용
행에 ISSUBTOTAL에 대한 인수로 지정된 열의 부분합 값이 포함된 경우 True를 반환하고 그렇지 않으면 False를 반환하는 다른 열을 요약 함수에서 만들 수 있도록 합니다.
SUMMARIZE(<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, ROLLUP(<groupBy_columnName>[,< groupBy_columnName>…])][, <name>, {<expression>|ISSUBTOTAL(<columnName>)}]…)
ISSUBTOTAL 매개 변수
- columnName
SUMMARIZE 함수의 테이블에 있는 열 또는 해당 테이블에 대한 관련 테이블에 있는 열의 이름입니다.
반환 값
행에 인수로 지정된 열의 부분합 값이 포함된 경우 True 값을 반환하고 그렇지 않으면 False를 반환합니다.
설명
ISSUBTOTAL은 SUMMARIZE 함수의 식 부분에만 사용할 수 있습니다.
ISSUBTOTAL 앞에는 일치하는 name열이 와야 합니다.
예제
다음 예제에서는 지정된 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 |