다음을 통해 공유


ISFILTERED 함수(DAX)

columnName이 직접 필터링될 경우 TRUE를 반환합니다. 열에 필터가 없거나 동일 테이블 또는 관련 테이블의 다른 열에 대한 필터링이 수행될 경우 함수가 FALSE를 반환합니다.

구문

ISFILTERED(<columnName>)

매개 변수

  • columnName
    표준 DAX 구문을 사용하는 기존 열의 이름입니다. 이 매개 변수는 식이 될 수 없습니다.

반환 값

columnName이 직접 필터링될 경우 TRUE입니다.

주의

  • 해당 필터가 열에 대해 적용될 때 columnName이 직접 필터링된다고 말하며, 동일 테이블 또는 관련 테이블의 다른 열에 적용된 필터가 필터링으로 인해 해당 열인 columnName에도 영향을 줄 때 열이 교차 필터링된다고 말합니다.

  • 동일 테이블 또는 관련 테이블에서 columnName 또는 다른 열이 필터링되는 경우 관련 함수 ISCROSSFILTERED 함수(DAX)에서 TRUE를 반환합니다.

다음 예에서는 측정값을 만들어 ISFILTERED() 동작을 설명하는 여러 가지 시나리오를 소개합니다. 이러한 시나리오는 DAX(Data Analysis Expressions) 예제 데이터 스프레드시트를 다운로드하여 따라 해볼 수 있습니다.

먼저 [Product] 테이블에 다음과 같이 [Is ProductName Filtered directly]라는 측정값을 만듭니다.

=ISFILTERED(Product[ProductName])

ISFILTERED() 이해:

  1. 측정값을 만든 후에는 식이 전혀 필터링되지 않았으므로 피벗 테이블에 [Is ProductName Filtered directly]가 FALSE인 것으로 표시됩니다. 이제 다음과 같이 표시됩니다.

    Is ProductName Filtered directly

    FALSE

    피벗 테이블에 아무것도 표시되지 않으면 [Is ProductName Filtered directly]를 Values 상자로 끕니다.

  2. ProductCategory[ProductCategoryName]를 행 레이블 상자로 끌면 모든 값이 계속 FALSE로 표시되고 테이블은 다음과 같이 표시됩니다.

    행 레이블

    Is ProductName Filtered directly

    Accessories

    FALSE

    Bikes

    FALSE

    Clothing

    FALSE

    Components

    FALSE

    FALSE

    총합계

    FALSE

    테이블에 FALSE 값이 포함된 이유는 ProductCategory[ProductCategoryName]이 Product[ProductName]을 간접적으로 필터링하거나 교차 필터링하지만 해당 열에 대한 직접 필터가 아니기 때문입니다.

  3. Product[Status]를 열 레이블 상자로 끕니다. 그러면 모든 값이 계속 FALSE이고 테이블은 다음과 같이 표시됩니다.

    Is ProductName Filtered directly

    열 레이블

    행 레이블

    Current

    총합계

    Accessories

    FALSE

    FALSE

    FALSE

    Bikes

    FALSE

    FALSE

    FALSE

    Clothing

    FALSE

    FALSE

    FALSE

    Components

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    총합계

    FALSE

    FALSE

    FALSE

    Product[Status]가 Product[Name]을 직접적으로 필터링하지 않으므로 여전히 테이블에는 FALSE 값이 많이 포함됩니다.

  4. 이 프로세스의 마지막 단계로 Product[Name]을 Report Filter 상자로 끕니다. 지금까지는 아무것도 변경된 것이 없습니다. 하지만 제품 이름을 선택하면 테이블이 TRUE로 변경됩니다. 선택한 제품에 따라 테이블이 다음과 같이 표시됩니다.

    ProductName

    Mountain-400-W Silver, 38

    Is ProductName Filtered directly

    열 레이블

    행 레이블

    Current

    총합계

    Accessories

    TRUE

    TRUE

    Bikes

    TRUE

    TRUE

    Clothing

    TRUE

    TRUE

    Components

    TRUE

    TRUE

    TRUE

    TRUE

    총합계

    TRUE

    TRUE

  5. 결론적으로 ISFILTERED()를 사용하면 식이 계산되는 컨텍스트에서 columnName이 직접 필터링되는지를 확인할 수 있습니다.

이 예에서는 DAX_AdventureWorks 예제 스프레드시트 모델이 사용되었습니다.

참고 항목

참조

ISCROSSFILTERED 함수(DAX)

FILTERS 함수(DAX)

HASONEFILTER 함수(DAX)

HASONEVALUE 함수(DAX)