IF.EAGER

適用於:導出數據行計算數據表Measure視覺計算

檢查條件,and 在 TRUE時傳回一個 value,否則會傳回 secondvalue。 它會使用 積極式 執行計劃,不論條件表達式為何,它一律會執行分支表達式。

語法

IF.EAGER(<logical_test>, <value_if_true>[, <value_if_false>])

參數

術語 定義
logical_test 任何可評估為 TRUEorFALSE的 valueor 表示式。
value_if_true 邏輯測試 if 傳回的 valueTRUE
value_if_false (選擇性)邏輯測試 if 傳回的 valueFALSE。 If 省略,則會傳回 BLANK

傳回 value

value_if_truevalue_if_falseorBLANK

言論

  • IF.EAGER 函式可以傳回變數數據類型,if value_if_true and value_if_false 屬於不同的數據類型,但函式會嘗試傳回單一數據類型,ifvalue_if_trueandvalue_if_false 都是數值數據類型。 在後者的情況下,IF.EAGER 函式會隱含 convert 數據類型,以容納這兩個 values。

    例如,公式 IF.EAGER(<condition>, TRUE(), 0) 會傳回 TRUEor 0,但公式 IF.EAGER(<condition>, 1.0, 0) 只傳回十進位 valueseven,不過 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 函式
邏輯函式