DIVIDE funksjon kontra divideringsoperator (/)
Når du som datamodellerer skriver et DAX uttrykk for å dele en teller med en nevner, kan du velge å bruke DIVIDE-funksjonen eller deleoperatoren (/ - skråstrek).
Når du bruker DIVIDE-funksjonen, må du sende inn teller- og nevneruttrykk. Du kan eventuelt sende inn en verdi som representerer et alternativt resultat.
DIVIDE(<numerator>, <denominator> [,<alternateresult>])
Funksjonen DIVIDE ble utformet for automatisk å håndtere deling etter null tilfeller. Hvis et alternativt resultat ikke sendes inn, og nevneren er null eller BLANK, returnerer funksjonen BLANK. Når et alternativt resultat sendes inn, returneres det i stedet for BLANK.
Funksjonen DIVIDE er praktisk fordi den lagrer uttrykket fra å først teste nevnerverdien. Funksjonen er også bedre optimalisert for testing av nevnerverdien enn IF-funksjonen. Ytelsesgevinsten er betydelig siden det er dyrt å se etter divisjon med null. Videre bruk av DIVIDE resulterer i et mer konsis og elegant uttrykk.
Eksempel
Følgende måluttrykk produserer en sikker divisjon, men det innebærer å bruke fire DAX funksjoner.
Profit Margin =
IF(
OR(
ISBLANK([Sales]),
[Sales] == 0
),
BLANK(),
[Profit] / [Sales]
)
Dette måluttrykket oppnår det samme resultatet, men likevel mer effektivt og elegant.
Profit Margin =
DIVIDE([Profit], [Sales])
Anbefalinger
Det anbefales at du bruker DIVIDE-funksjonen når nevneren er et uttrykk som kan returnere null eller BLANK.
Hvis nevneren er en konstant verdi, anbefaler vi at du bruker deleoperatoren. I dette tilfellet er delingen garantert å lykkes, og uttrykket ditt vil fungere bedre fordi det vil unngå unødvendig testing.
Vurder nøye om DIVIDE-funksjonen skal returnere en alternativ verdi. For mål er det vanligvis en bedre utforming at de returnerer BLANK. Det er bedre å returnere BLANK fordi rapportvisualobjekter som standard eliminerer grupperinger når oppsummeringer er BLANK. Det gjør det mulig for visualobjektet å fokusere oppmerksomheten på grupper der det finnes data. Når det er nødvendig, kan du konfigurere visualobjektet til å vise alle grupper (som returnerer verdier eller BLANK) i filterkonteksten ved å aktivere alternativet Vis elementer uten data.
Relatert innhold
- Læreprogram: Bruke DAX i Power BI Desktop
- Spørsmål? Prøv å spørre Power BI-fellesskapet
- Forslag? Bidra med ideer for å forbedre Power BI-