Zdieľať cez


DIVIDE funkcie vs. operátor delenia (/)

Ako modelár údajov môžete pri písaní výrazu DAX na delenie čitateľa menovateľom použiť funkciu DIVIDE alebo operátor delenia (/ – lomka).

Pri použití funkcie DIVIDE musíte zaniesť výrazy čitateľa a menovateľa. Voliteľne môžete zadať hodnotu, ktorá predstavuje alternatívny výsledok.

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

Funkcia DIVIDE bola navrhnutá tak, aby automaticky spracovávala delenie nulou. Ak nie je odovzdaný alternatívny výsledok a menovateľ je nula alebo BLANK, funkcia vráti BLANK. Keď sa odovzdá alternatívny výsledok, vráti sa namiesto BLANK.

Funkcia DIVIDE je praktická, pretože výraz vďaka nej nebude musieť najprv otestovať hodnotu menovateľa. Funkcia je tiež lepšie optimalizovaná na testovanie hodnoty menovateľa ako funkcia IF. Nárast výkonu je významný, pretože kontrola delenia nulou je náročná na zdroje. Použitie DIVIDE navyše vedie k stručnejšiemu a elegantnejšiemu výrazu.

Príklad

Nasledujúci výraz mierky vytvára bezpečné delenie, ale zahŕňa použitie štyroch DAX funkcií.

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

Tento výraz mierky dosahuje rovnaký výsledok ešte efektívnejšie a elegantnejšie.

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

Odporúčania

Funkciu DIVIDE sa odporúča použiť vždy, keď je menovateľom výraz, ktorý by mohol vrátiť nulu alebo BLANK.

V prípade menovateľa, ktorý je konštantnou hodnotou, odporúčame použiť operátor delenie. V tomto prípade bude delenie zaručene úspešné a výraz bude fungovať lepšie, pretože sa vyhne zbytočnému testovaniu.

Dôkladne zvážte, či funkcia DIVIDE má vrátiť alternatívnu hodnotu. V prípade mierok je zvyčajne lepším návrhom, keď sa vrátia BLANK. Vrátenie BLANK je vhodnejšie, pretože vizuály zostáv predvolene eliminujú zoskupenia, keď sú súhrny BLANK. Vďaka tomu môže byť pozornosť vizuálu zameraná na skupiny, v ktorých existujú údaje. Ak je to potrebné, môžete v službe Power BI nakonfigurovať vizuál tak, aby zobrazoval všetky skupiny (ktoré vracajú hodnoty alebo BLANK) v kontexte filtra tým, že povolíte možnosť Zobraziť položky bez údajov.