FILTER()
FILTER(<table>,<filter>)
FILTER 함수는 지정된 테이블에서 특정 조건을 만족하는 행들을 반환합니다. 조건에 맞는 행들을 새 테이블로 반환하는 데 사용됩니다.
FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
FILTER 함수는 'InternetSales_USD' 테이블을 필터링합니다. RELATED 함수는 'SalesTerritory'[SalesTerritoryCountry] 값을 가져옵니다. 조건은 SalesTerritoryCountry가 "United States"가 아닌 경우에만 해당 행을 포함합니다.
SUMX(
FILTER(
'InternetSales_USD',
RELATED('SalesTerritory'[SalesTerritoryCountry]) <> "United States"
),
'InternetSales_USD'[SalesAmount_USD]
)
이제 필터링된 테이블에서 SalesAmount_USD 값을 합산합니다.
RunningTotal =
SUMX(
FILTER(
ALL('InternetSales_USD'),
'InternetSales_USD'[OrderDate] <= MAX('InternetSales_USD'[OrderDate])
),
'InternetSales_USD'[SalesAmount_USD]
)
ALL 함수는 InternetSales_USD 테이블의 필터를 제거하여 모든 데이터를 대상으로 계산을 진행하게 합니다. 이 경우 날짜에 대한 필터링이 제거됩니다. FILTER는 ALL로 필터가 제거된 테이블에서 OrderDate가 현재 행의 OrderDate 이하인 데이터만 필터링합니다. MAX('InternetSales_USD'[OrderDate])는 현재 컨텍스트에서 최대 날짜를 가져옵니다. 즉, SUMX가 계산되는 각 행에서 해당 날짜까지의 모든 판매 금액을 포함하게 됩니다.
첫 번째 날짜 (2025-01-01): OrderDate가 2025-01-01인 행만 포함되므로, 누적 합은 500입니다.
두 번째 날짜 (2025-01-02): 2025-01-02까지의 모든 데이터(즉, 2025-01-01, 2025-01-02의 데이터)를 합산합니다. 500 + 300 = 800입니다.
KEEPFILTERS()
KEEPFILTERS는 CALCULATE 함수와 함께 사용하는 DAX 함수로, 기존의 필터를 유지한 채로 계산을 수행할 수 있게 해줍니다. 이 함수는 필터 컨텍스트를 변경하려는 경우, 원래의 필터를 그대로 유지하면서 추가적인 필터를 적용하는 데 유용합니다.
CALCULATE 함수는 기본적으로 기존 필터를 제거하고 새로운 필터를 적용합니다. 그러나 KEEPFILTERS를 사용하면 기존 필터를 유지하면서 추가적인 필터를 적용할 수 있기 때문에, 더 세부적인 조건을 추가할 때 유용합니다.
TotalSales_East_Laptop =
CALCULATE(
SUM('Sales'[Amount]),
KEEPFILTERS('Sales'[Product] = "Laptop"),
'Sales'[Region] = "East"
)
이 예시에서 KEEPFILTERS는 Region이 "East"인 필터를 그대로 두고, Product가 "Laptop"인 필터를 추가합니다. 이를 통해 East 지역의 "Laptop" 제품에 대해서만 판매 합계를 계산합니다.
여기서 Region이 "East"인 데이터를 먼저 필터링하고, 기존 필터를 유지한 채로 Product가 "Laptop"인 데이터만 필터링합니다.
'BI & Visualization > Power BI' 카테고리의 다른 글
Power BI | IF 함수 (0) | 2025.04.05 |
---|---|
Power BI | X 함수 (SUMX, AVERAGEX, MINX, MAXX, COUNTX, PRODUCTX) (0) | 2025.04.03 |
Power BI | RANK(), RANKX() (0) | 2025.04.02 |
Power BI | Variables (VAR)란? (0) | 2025.04.01 |
Power BI | ALL(), ALLSELECTED(), ALLEXCEPT() (0) | 2025.03.31 |