ЕСЛИ

применяется:вычисляемый столбецвычисляемой таблицыизмерениевизуального вычисления

Проверяет условие и возвращает одно значение, если оно 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_true и value_if_false имеют разные типы данных, но функция пытается вернуть один тип данных, если оба типа данных value_if_true и value_if_false имеют числовые типы данных. В последнем случае функция IF неявно преобразует типы данных в соответствии с обоими значениями.

    Например, формула IF(<condition>, TRUE(), 0) возвращает TRUE или 0, но формула IF(<condition>, 1.0, 0) возвращает только десятичные значения, даже если value_if_false имеет весь тип данных чисел. Дополнительные сведения о неявном преобразовании типов данных см. в типах данных.

  • Чтобы выполнить выражения ветви независимо от выражения условия, используйте IF. ВМЕСТО этого ХИРВ.

Примеры

В следующих определения вычисляемых столбцов в таблице product используют функцию IF по-разному для классификации каждого продукта на основе его цены на список.

В первом примере проверяется, является ли значение столбца цен на меньше 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)
логические функции