IF.EAGER
Controlla una condizione e restituisce un valore quando TRUE
, in caso contrario restituisce un secondo valore. Usa un piano di esecuzione eager che esegue sempre le espressioni di ramo indipendentemente dall'espressione della condizione.
Sintassi
IF.EAGER(<logical_test>, <value_if_true>[, <value_if_false>])
Parametri
Termine | Definizione |
---|---|
logical_test |
Qualsiasi valore o espressione che può essere valutata per TRUE o FALSE . |
value_if_true |
Valore restituito se il test logico è TRUE . |
value_if_false |
(Facoltativo) Valore restituito se il test logico è FALSE . Se omesso, viene restituito BLANK . |
Valore restituito
value_if_true
, value_if_false
o BLANK
.
Osservazioni
La funzione IF.EAGER può restituire un tipo di dati variant se value_if_true e value_if_false sono di tipi di dati diversi, ma la funzione tenta di restituire un singolo tipo di dati se sia
value_if_true
chevalue_if_false
sono di tipi di dati numerici. In quest'ultimo caso, la funzione IF.EAGER convertirà in modo implicito i tipi di dati in modo da contenere entrambi i valori.Ad esempio, la formula
IF.EAGER(<condition>, TRUE(), 0)
restituisceTRUE
o 0, ma la formulaIF.EAGER(<condition>, 1.0, 0)
restituisce solo valori decimali anche sevalue_if_false
è del tipo di dati numero intero. Per altre informazioni sulla conversione implicita dei tipi di dati, vedere Tipi di dati.IF.EAGER ha lo stesso comportamento funzionale della funzione IF, ma le prestazioni possono variare a causa delle differenze nei piani di esecuzione.
IF.EAGER(<logical_test>, <value_if_true>, <value_if_false>)
ha lo stesso piano di esecuzione dell'espressione di DAX seguente:VAR _value_if_true = <value_if_true> VAR _value_if_false = <value_if_false> RETURN IF (<logical_test>, _value_if_true, _value_if_false)
Nota: le due espressioni di ramo vengono valutate indipendentemente dall'espressione della condizione.
Esempi
Vedere esempi di IF.