IF.EAGER
Область применения: вычисление вычисляемого столбца вычисляемой таблицы Меры визуального элемента
Проверяет условие и возвращает одно значение, если значение TRUE, в противном случае возвращается второе значение. Он использует готовый план выполнения, который всегда выполняет выражения ветви независимо от выражения условия.
Синтаксис
IF.EAGER(<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 или ПУСТО.
Замечания
The IF. Функция EAGER может возвращать вариантный тип данных, если value_if_true и value_if_false имеют разные типы данных, но функция пытается вернуть один тип данных, если оба типа данных value_if_true и value_if_false имеют числовые типы данных. В последнем случае — IF. Функция EAGER неявно преобразует типы данных в соответствии с обоими значениями.
Например, формула
IF.EAGER(<condition>, TRUE(), 0)
возвращает значение TRUE или 0, но формулаIF.EAGER(<condition>, 1.0, 0)
возвращает только десятичные значения, даже если value_if_false имеет весь тип данных чисел. Дополнительные сведения о неявном преобразовании типов данных см. в разделе "Типы данных".ЕСЛИ. СЛУЖБА РВРВ имеет то же функциональное поведение, что и функция IF, но производительность может отличаться из-за различий в планах выполнения.
IF.EAGER(<logical_test>, <value_if_true>, <value_if_false>)
имеет тот же план выполнения, что и следующее выражение DAX:VAR _value_if_true = <value_if_true> VAR _value_if_false = <value_if_false> RETURN IF (<logical_test>, _value_if_true, _value_if_false)
Примечание. Два выражения ветви вычисляются независимо от выражения условия.
Примеры
См . примеры IF.