Dela via


Funktionen DIVIDEra jämfört med dividera operatorn (/)

När du som datamodellerare skriver ett DAX-uttryck för att dela upp en täljare med en nämnare kan du välja att använda funktionen DIVIDEra eller dividera operatorn (/ – snedstreck).

När du använder funktionen DIVIDE måste du skicka in täljar- och nämnaruttryck. Alternativt kan du skicka in ett värde som representerar ett alternativ resultat.

DIVIDE(<numerator>, <denominator> [,<alternateresult>])

Funktionen DIVIDE utformades för att automatiskt hantera division med noll fall. Om ett alternativt resultat inte skickas och nämnaren är noll eller TOM, returnerar funktionen BLANK. När ett alternativt resultat skickas returneras det istället för BLANK.

Funktionen DIVIDE är praktisk eftersom den sparar uttrycket från att först behöva testa nämnarens värde. Funktionen är också bättre optimerad för att testa nämnarens värde än IF-funktionen . Prestandavinsten är betydande eftersom det är dyrt att kontrollera divisionen med noll. Ytterligare användning av DIVIDE resulterar i ett mer koncist och elegant uttryck.

Exempel

Följande måttuttryck skapar en säker division, men det innebär att du använder fyra DAX-funktioner.

Profit Margin =
IF(
    OR(
        ISBLANK([Sales]),
        [Sales] == 0
    ),
    BLANK(),
    [Profit] / [Sales]
)

Det här måttuttrycket uppnår samma resultat, men ändå mer effektivt och elegant.

Profit Margin =
DIVIDE([Profit], [Sales])

Rekommendationer

Vi rekommenderar att du använder funktionen DIVIDE när nämnaren är ett uttryck som kan returnera noll eller BLANK.

Om nämnaren är ett konstant värde rekommenderar vi att du använder divideringsoperatorn. I det här fallet är divisionen garanterad att lyckas och ditt uttryck fungerar bättre eftersom det undviker onödig testning.

Fundera noga på om funktionen DIVIDEra ska returnera ett alternativt värde. För mått är det vanligtvis en bättre design att de returnerar BLANK. Att returnera BLANK är bättre eftersom visuella rapportobjekt som standard eliminerar grupperingar när sammanfattningar är TOMMA. Det gör att det visuella objektet kan fokusera på grupper där data finns. Vid behov kan du i Power BI konfigurera det visuella objektet så att det visar alla grupper (som returnerar värden eller BLANK) i filterkontexten genom att aktivera alternativet Visa objekt utan data .