IF

Şunun için geçerlidir: Hesaplanan sütunHesaplanan tabloÖlçüGörseli hesaplaması

Bir koşulu denetler ve TRUE olduğ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>])

Parametreler

Süre Tanım
logical_test DOĞRU veya YANLIŞ olarak değerlendirilebilecek herhangi bir değer veya ifade.
Doğru_değeri Mantıksal test TRUE ise döndürülen değer.
Yanlış_ise_değer (İsteğe bağlı) Mantıksal test YANLIŞ ise döndürülen değer. Atlanırsa BLANK döndürülür.

Dönüş değeri

value_if_true, value_if_false veya BLANK.

Açıklamalar

  • EĞER 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, EĞER 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, formül IF(<condition>, TRUE(), 0) DOĞRU veya 0 döndürür, ancak value_if_false tam sayı veri türünde olmasına rağmen formül IF(<condition>, 1.0, 0) 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 EĞER kullanın . BUNUN yerine EAGER .

Ö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 IF işlevini farklı şekillerde 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, Low 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 . DAX ö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ü Düşük veya Yüksek olarak 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 EĞER işlevini iç içe aktarır. Bu nedenle formül, her ürünü Düşük, Orta veya Yüksek olarak sınıflandırır.

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

İpucu

Birden çok EĞER 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.

EĞER. EAGER işlevi
SWITCH işlevi (DAX)
Mantıksal işlevler