CALCULATETABLE 함수
지정된 필터로 수정된 컨텍스트에서 테이블 식을 계산합니다.
구문
CALCULATETABLE(<expression>,<filter1>,<filter2>,…)
매개 변수
용어 |
정의 |
---|---|
Expression |
계산할 테이블 식입니다. |
filter1,filter2,… |
필터를 정의하는 부울 식 또는 테이블 식입니다. |
첫 번째 매개 변수로 사용되는 식은 테이블을 반환하는 함수여야 합니다.
인수로 사용되는 부울 식에는 다음 제한 사항이 적용됩니다.
식에서는 측정값을 참조할 수 없습니다.
식에서는 중첩된 CALCULATE 함수를 사용할 수 없습니다.
식에서는 집계 함수를 포함하여 테이블을 검색하거나 테이블을 반환하는 함수를 사용할 수 없습니다.
그러나 부울 식에서는 단일 값을 조회하거나 스칼라 값을 계산하는 함수를 사용할 수 있습니다.
반환 값
값 테이블
주의
CALCULATETABLE 함수는 데이터가 필터링되는 컨텍스트를 변경하고 지정하는 새 컨텍스트에서 식을 계산합니다. 필터 인수에서 사용된 각 열에 대해 해당 열의 기존 필터가 제거되고 필터 인수에 사용된 필터가 대신 적용됩니다.
이 함수는 RELATEDTABLE 함수와 의미가 같습니다.
예
다음 예에서는 CALCULATETABLE 함수를 사용하여 2006년 인터넷 판매 부문의 매출 합계를 구합니다. 이 값은 나중에 2006년도 매출 총액 중 인터넷 매출이 차지하는 비율을 계산하는 데 사용됩니다.
다음 표에는 아래 수식의 결과가 나와 있습니다.
행 레이블 |
Internet SalesAmount_USD |
CalculateTable 2006 Internet Sales |
Internet Sales to 2006 ratio |
---|---|---|---|
2005 |
$2,627,031.40 |
$5,681,440.58 |
0.46 |
2006 |
$5,681,440.58 |
$5,681,440.58 |
1.00 |
2007 |
$8,705,066.67 |
$5,681,440.58 |
1.53 |
2008 |
$9,041,288.80 |
$5,681,440.58 |
1.59 |
총합계 |
$26,054,827.45 |
$5,681,440.58 |
4.59 |
=SUMX( CALCULATETABLE('InternetSales_USD', 'DateTime'[CalendarYear]=2006)
, [SalesAmount_USD])