共用方式為


IF.EAGER

適用於:計算結果列匯出數據表量值視覺計算

檢查條件,並在其為 TRUE 時傳回一個值,否則傳回第二個值。 其會使用 eager 執行計劃,無論條件運算式為何,一律會執行分支運算式。

語法

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_truevalue_if_false 或 BLANK。

備註

  • 若 value_if_true 與 value_if_false 的資料類型不同,IF.EAGER 函數可以傳回 Variant 資料類型;但若 value_if_truevalue_if_false 都是數值資料類型,則此函數會嘗試傳回單精確度資料類型。 在後者的情況下,IF.EAGER 函數將會隱含地轉換資料類型,以容納這兩個值。

    例如,公式 IF.EAGER(<condition>, TRUE(), 0) 會傳回 TRUE 或 0,但即使 value_if_false 是整數資料類型,公式 IF.EAGER(<condition>, 1.0, 0) 還是只會傳回十進位值。 若要深入了解隱含資料類型轉換,請參閱資料類型

  • 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 函式
邏輯函式