Contact us

Pošlji
povpraševanje

Zakladnica znanja

  • Predzanje

  • Kategorije

November 6, 2020

DAX funkcija IF

Avtor: Branka Trifunović

V članku je uporabljen Power BI Desktop verzije 2.76.5678.782 (December 2019).

Funkcija IF() preveri pravilnost izraza. Če je izraz pravilen ga ovrednoti z TRUE in vrne vnaprej določeno vrednost. Če izraz ni pravilen, ga ovrednoti z FALSE, in vrne drugo v naprej določeno vrednost.

Sintaksa

IF(LogicalTest, ValueIfTrue, [ValueIfFalse])

Parameter Opis
LogicalTest Izraz, ki se ovrednoti kot TRUE ali FALSE
ValueIfTrue Vrednost, ki se vrne v primeru da je izraz TRUE
ValueIfFalse Vrednost, ki se vrne v primeru da je izraz FALSE (opcijsko)

 

V logičnem testu lahko uporabimo katerikoli izraz. V izrazih lahko uporabimo operatorje za primerjavo.

Operator Opis
= Enako
== Striktno enako
< Manjše
> Večje
<= Manjše ali enako
>= Večje ali enako
<> Ni enako

 

Če želimo testirati več pogojev uporabimo operatorje za primerjavo.

Operator Opis
&& In
|| Ali

Primer: en pogoj

Imamo tabelo Supplies z evidenco trenutne zaloge pisarniškega materiala.

Želimo dodati stolpec, v katerem bo pisalo »Order« za artikle, ki jih je manj kot 200, ter »Don’t order« za vse ostale artikle. Izberemo New Column in v vnosno polje vnesemo naslednjo formulo.

IF_Example = IF(Supplies[Quantity] < 200, “Order”, “Don’t order”)

Primer: več pogojev

Tokrat želimo spet naročiti vse artikle, ki jih je na zalogi manj kot 200, hkrati pa v nobenem primeru ne želimo naročiti pisal. Dodamo dodatni pogoj.

IF_Example = IF(Supplies[Quantity] < 200 && Supplies[Name] <> “Pen”, “Order”, “Don’t order”)

Primer: več IF pogojev

Pogosto se zgodi, da želimo izpisati še tretjo vrednost. V tem primeru dodamo IF še v vrednost za izpis. Tokrat želimo:

  • Izpisati »Order« za artikle, ki jih je manj kot 200
  • Izpisati »Sell back« za artikle, ki jih je več ali enako 1000
  • Izpisati »Don’t order« za vse ostale

Dodamo nov stolpec in vnesemo naslednjo formulo.

IF_Example = IF(Supplies[Quantity] < 200, “Order”, IF(Supplies[Quantity] >= 1000, “Sell back”, “Don’t order”))

Kazalo