Læs på engelsk

Del via


IF

gælder for:beregnet kolonneberegnet tabelMeasurevisualiseringsberegning

Kontrollerer en betingelse, and returnerer én value, når den er TRUE, ellers returneres en secondvalue.

Syntaks

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

Parametre

Udtryk Definition
logical_test Alle valueor udtryk, der kan evalueres til at TRUEorFALSE.
value_if_true Den value, der returneres if den logiske test, er TRUE.
value_if_false (Valgfrit) Den value, der returneres if den logiske test, er FALSE. If udelades, returneres BLANK.

Returner value

Enten value_if_true, value_if_falseorBLANK.

Bemærkninger

  • Funktionen IF kan returnere en variantdatatype, ifvalue_if_trueandvalue_if_false er af forskellige datatyper, men funktionen forsøger at returnere en enkelt datatype, if begge value_if_trueandvalue_if_false er af numeriske datatyper. I sidstnævnte tilfælde convert funktionen IF implicit for at imødekomme begge values.

    Formlen IF(<condition>, TRUE(), 0) returnerer f.eks. TRUEor 0, men formlen IF(<condition>, 1.0, 0) returnerer kun decimaler valueseven selvom value_if_false er af datatypen heltal. Du kan få mere at vide om konvertering af implicitte datatyper under Datatyper.

  • Hvis du vil udføre forgreningsudtryk, uanset betingelsesudtrykket, skal du i stedet bruge IF.EAGER.

Eksempler

Følgende Product tabelberegnede kolonnedefinitioner bruger funktionen IF på forskellige måder til at klassificere hver product baseret på dens liste price.

I first eksempel testes det, om kolonnen valueList Price er mindre end 500. Når denne betingelse er true, returneres valueLow-. Da der ikke er nogen value_if_falsevalue, returneres BLANK.

Eksempler i denne artikel kan bruges sammen med sample Adventure Works DW 2020 Power BI Desktop-model. Hvis du vil hente modellen, skal du se DAXsample model.

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

I second eksempel bruges den samme test, men denne time indeholder en value_if_falsevalue. Formlen klassificerer derfor hver product som enten LoworHigh.

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

I det tredje eksempel bruges den samme test, men denne time indlejrer en IF funktion for at udføre en ekstra test. Formlen klassificerer derfor hver product som enten Low, Medium, orHigh.

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

Tip

Når du har brug for at indlejre flere IF funktioner, kan funktionen SWITCH være en bedre løsning. Denne funktion giver en mere elegant måde at skrive et udtryk på, der returnerer mere end to mulige values.

IF.EAGER funktion
funktionen SWITCH (DAX)
Logiske funktioner