DIVIDE függvény vs. sima osztás Power BI-ban. Mikor melyiket használd?

A DIVIDE függvény a DAX-ban osztási műveletek elvégzésére használható. Azért különösen hasznos, mert kezeli azokat az eseteket, amikor a nevező értéke 0 vagy hiányzik, elkerülve ezzel a “nullával való osztás” hibákat.

Power BI-ban szerencsére nincs #ZÉRÓOSZTÓ hiba, de csúnyán néz ki, amikor egy osztás értéke végtelen. Úgyhogy mutatom, mire jó a DIVIDE.


DIVIDE függvény szintaxisa

DIVIDE(számláló, nevező, [alternatív érték])
  • számláló: Az osztás felső értéke, amit el szeretnél osztani (osztandó).
  • nevező: Az osztás alsó értéke (osztó).
  • [alternatív érték] (nem kötelező): Egy opcionális paraméter, amelyet akkor adhatunk meg, ha a nevező 0, vagy hiányzik (NULL). Ha nem adod meg, a DIVIDE BLANK() értéket ad vissza ilyen esetekben (ez csúnyán néz ki a kártya vizualizációkban).

Mikor érdemes használni a DIVIDE függvényt?

  1. Nullával való osztás elkerülése
    Ha manuálisan írsz egy osztási műveletet, például A / B, az hibát okozhat, ha a nevező (B) értéke 0. A DIVIDE ezt automatikusan kezeli.
  2. Adattisztítás nélkülözhetősége
    A DIVIDE használatával nem kell előre ellenőrizni, hogy a nevező értéke érvényes-e (nem 0 és nem NULL).
  3. Tisztább kód
    Ahelyett, hogy feltételes logikával ellenőriznéd a nullát (például IF(B = 0, BLANK(), A / B)), egyszerűen használhatod a DIVIDE-ot.

Példák

1. Egyszerű osztás

Van egy Sales tábla, ahol két oszlop van: Revenue (Bevétel) és Quantity (Mennyiség). Szeretnéd kiszámítani az egy egységre jutó átlagos árat:

Average Price = 
DIVIDE(Sales[Revenue], Sales[Quantity])
  • Ez az osztás automatikusan kezeli azokat az eseteket, amikor a Quantity értéke 0.

2. Alternatív érték megadása

Az előző példában, ha szeretnéd, hogy nullával való osztás esetén az eredmény 0 legyen:

Average Price = 
DIVIDE(Sales[Revenue], Sales[Quantity], 0)
  • Ha a Quantity értéke 0 vagy hiányzik, a függvény 0-t ad vissza ahelyett, hogy hibát generálna.

3. Számított oszlop

Ha számított oszlopot hozol létre egy táblában, például az árrés (Profit Margin) kiszámításához:

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

Ez automatikusan figyelembe veszi az esetleges 0 vagy NULL értékeket a Revenue oszlopban.

4. Százalékos arány kiszámítása

Szeretnéd kiszámítani az egyes termékek eladásainak százalékos arányát az összes eladáshoz képest:

Sales Percentage = 
DIVIDE(
Sales[Revenue],
CALCULATE(SUM(Sales[Revenue]), ALL(Sales))
)
  • Számláló: Az egyes termékek Revenue értéke.
  • Nevező: Az összes termék Revenue összegzett értéke, az ALL(Sales) segítségével figyelmen kívül hagyjuk a szűrőket.
  • Calculate és ALL függvényekről bővebben a Power BI tanfolyamon tanulunk, és itt olvashatsz róluk:

Miért jobb, mint a manuális osztás?

Manuális osztás példa (hibával):

Average Price = 
IF(Sales[Quantity] = 0, BLANK(), Sales[Revenue] / Sales[Quantity])

Ez működik, de bonyolultabb, és a kód kevésbé olvasható. Ráadásul, ha NULL értékkel találkozik, további kezelést igényel.

DIVIDE függvénnyel:

Average Price = 
DIVIDE(Sales[Revenue], Sales[Quantity])

Ez egyszerűbb és automatikusan kezeli a problémákat.


Alternatív érték nélküli viselkedés

Ha nem adod meg az [alternatív érték] paramétert, a DIVIDE hibás osztás esetén BLANK() értéket ad vissza. Ez hasznos lehet, ha üres cellákat szeretnél látni a hibás eredmények helyén, viszont zavaró lehet, ha egy kártya vizualizáción szeretnéd megjeleníteni mondjuk a Profit Margin értékét.

Ha szeretnál átfogó tudást kapni a DAX függvényekről, akkor gyere el a Power BI tanfolyamra, ahol lépésről lépésre megtanulod azt, hogy mit, miért, hogyan csinálunk.

Minden infó itt: https://datakepzes.hu/power-bi-tanfolyam-kezdo-halado-online/

Scroll to Top