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
или BLANK
.
Замечания
Функция 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.EAGER имеет то же функциональное поведение, что и функция 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 примеры.
Связанное содержимое
функция IFлогических функций