İngilizce dilinde oku

Aracılığıyla paylaş


IF

Şunlar için geçerlidir:Hesaplanan sütunHesaplanan tabloMeasureGörsel hesaplama

Bir koşulu denetler andTRUEolduğunda bir value döndürür, aksi takdirde bir secondvaluedöndürür.

Sözdizimi

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

Parametre

Terim Tanım
logical_test TRUE or FALSEolarak değerlendirilebilecek tüm valueor ifadeleri.
value_if_true Mantıksal test if döndürülen valueTRUE.
value_if_false (İsteğe bağlı) Mantıksal test if döndürülen valueFALSE. If atlanırsa BLANK döndürülür.

İade value

value_if_true, value_if_false, orBLANK.

Açıklamalar

  • IF işlevi farklı veri türlerinde ifvalue_if_trueandvalue_if_false değişken veri türü döndürebilir, ancak işlev tek bir veri türü döndürmeye çalışır if her iki value_if_trueandvalue_if_false de sayısal veri türündedir. İkinci durumda, IF işlevi her iki valuesde barındırmak için veri türlerini örtük olarak convert.

    Örneğin, formül IF(<condition>, TRUE(), 0)TRUEor 0 döndürür, ancak IF(<condition>, 1.0, 0) formül yalnızca ondalık valueseven döndürür, ancak value_if_false tam sayı veri türündedir. Örtük veri türü dönüştürme hakkında daha fazla bilgi edinmek için bkz. Veri türleri.

  • Koşul ifadelerinden bağımsız olarak dal ifadelerini yürütmek için bunun yerine IF.EAGER kullanın.

Örnekler

Aşağıdaki Product tablo hesaplanmış sütun tanımları, IF işlevini product liste pricegöre sınıflandırmak için farklı şekillerde kullanır.

first örnek, Listesi Price sütun value 500'den küçük olup olmadığını sınar. Bu koşul olduğunda, Düşük döndürülür. value_if_false valueolmadığından BLANK döndürülür.

Bu makaledeki örnekler sample Adventure Works DW 2020 Power BI Desktop modeliyle kullanılabilir. Modeli almak için bkz.modeli .

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low"
)

second örnek aynı testi kullanır, ancak bu time bir value_if_falsevalueiçerir. Bu nedenle, formül her productLoworHigholarak sınıflandırır.

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low",
    "High"
)

Üçüncü örnek aynı testi kullanır, ancak bu time ek test gerçekleştirmek için bir IF işlevi iç içe yerleştirilmiştir. Bu nedenle formül, her productLow, MediumorHigholarak sınıflandırır.

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low",
    IF(
        'Product'[List Price] < 1500,
        "Medium",
        "High"
    )
)

İpucu

Birden çok IF işlevini iç içe yerleştirmeniz gerektiğinde, SWITCH işlevi daha iyi bir seçenek olabilir. Bu işlev, ikiden fazla olası valuesdöndüren bir ifade yazmak için daha zarif bir yol sağlar.

IF.EAGER işlevi
SWITCH işlevi (DAX)
mantıksal işlevleri