다음을 통해 공유


IF

적용 대상:계산 열계산 테이블측정값시각적 계산

조건을 확인하고 TRUE때 한 값을 반환하고, 그렇지 않으면 두 번째 값을 반환합니다.

통사론

IF(<logical_test>, <value_if_true>[, <value_if_false>])

매개 변수

학기 정의
logical_test TRUE 또는 FALSE계산할 수 있는 모든 값 또는 식입니다.
value_if_true 논리 테스트가 TRUE경우 반환되는 값입니다.
value_if_false (선택 사항) 논리 테스트가 FALSE경우 반환되는 값입니다. 생략하면 BLANK 반환됩니다.

반환 값

value_if_true, value_if_false또는 BLANK.

발언

  • IF 함수는 value_if_truevalue_if_false 서로 다른 데이터 형식인 경우 변형 데이터 형식을 반환할 수 있지만 value_if_truevalue_if_false 모두 숫자 데이터 형식인 경우 함수는 단일 데이터 형식을 반환하려고 시도합니다. 후자의 경우 IF 함수는 두 값을 모두 수용하도록 데이터 형식을 암시적으로 변환합니다.

    예를 들어 수식 IF(<condition>, TRUE(), 0)TRUE 또는 0을 반환하지만 수식 IF(<condition>, 1.0, 0)value_if_false 정수 데이터 형식인 경우에도 소수 값만 반환합니다. 암시적 데이터 형식 변환에 대한 자세한 내용은 데이터 형식참조하세요.

  • 조건 식에 관계없이 분기 식을 실행하려면 대신 IF.EAGER 사용합니다.

예제

다음 Product 테이블 계산 열 정의는 IF 함수를 사용하여 정가에 따라 각 제품을 분류합니다.

첫 번째 예제에서는 List Price 열 값이 500보다 작은지 테스트합니다. 이 조건이 true이면 low 값이 반환됩니다. value_if_false 값이 없으므로 BLANK 반환됩니다.

이 문서의 예제는 Adventure Works DW 2020 Power BI Desktop 모델 샘플과 함께 사용할 수 있습니다. 모델을 얻으려면 DAX 샘플 모델참조하세요.

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low"
)

두 번째 예제에서는 동일한 테스트를 사용하지만 이번에는 value_if_false 값이 포함됩니다. 따라서 수식은 각 제품을 Low 또는 High분류합니다.

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low",
    "High"
)

세 번째 예제에서는 동일한 테스트를 사용하지만 이번에는 IF 함수를 중첩하여 추가 테스트를 수행합니다. 따라서 수식은 각 제품을 Low, Medium또는 High분류합니다.

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low",
    IF(
        'Product'[List Price] < 1500,
        "Medium",
        "High"
    )
)

여러 IF 함수를 중첩해야 하는 경우 SWITCH 함수가 더 나은 옵션이 될 수 있습니다. 이 함수는 두 개 이상의 가능한 값을 반환하는 식을 작성하는 보다 세련된 방법을 제공합니다.

IF.EAGER 함수SWITCH 함수(DAX)논리 함수