Aracılığıyla paylaş


IF

Şunlar için geçerlidir:Hesaplanan sütunHesaplanan tabloÖlçüGörsel hesaplama

Bir koşulu denetler ve TRUEolduğunda bir değer döndürür; aksi takdirde ikinci bir değer döndürür.

Sözdizimi

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

Parametre

Terim Tanım
logical_test TRUE veya FALSEolarak değerlendirilebilecek herhangi bir değer veya ifade.
value_if_true Mantıksal test TRUEise döndürülen değer.
value_if_false (İsteğe bağlı) Mantıksal test FALSEise döndürülen değer. Atlanırsa BLANK döndürülür.

Dönüş değeri

value_if_true, value_if_falseveya BLANK.

Açıklamalar

  • IF işlevi, value_if_true ve value_if_false farklı veri türlerindeyse değişken veri türü döndürebilir, ancak hem value_if_true hem de value_if_false sayısal veri türlerindeyse işlev tek bir veri türü döndürmeye çalışır. İkinci durumda, IF işlevi her iki değeri de barındırmak için veri türlerini örtük olarak dönüştürür.

    Örneğin, IF(<condition>, TRUE(), 0) formülü TRUE veya 0 döndürür, ancak IF(<condition>, 1.0, 0) formül, value_if_false tam sayı veri türünde olmasına rağmen yalnızca ondalık değerleri döndürür. Ö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 tablosu hesaplanmış sütun tanımları, her ürünü liste fiyatına göre sınıflandırmak için farklı şekillerde IF işlevini kullanır.

İlk örnek, Liste Fiyatı sütun değerinin 500'den küçük olup olmadığını sınar. Bu koşul true olduğunda, Düşük değeri döndürülür. value_if_false değer olmadığından BLANK döndürülür.

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

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

İkinci örnek aynı testi kullanır, ancak bu kez bir value_if_false değeri içerir. Bu nedenle formül, her ürünü Low veya Higholarak sınıflandırır.

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

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

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

Bahşiş

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ı değer döndüren bir ifade yazmak için daha zarif bir yol sağlar.

IF.EAGER işleviSWITCH işlevi (DAX)Mantıksal işlevler