Condividi tramite


Confronto tra funzione DIVIDE e operatore di divisione (/)

Quando si scrive un'espressione DAX per dividere un numeratore per un denominatore, un modeler di dati può scegliere di usare la funzione DIVIDE o l'operatore di divisione (/ - barra).

Quando si usa la funzione DIVIDE, è necessario passare le espressioni del numeratore e del denominatore. Facoltativamente, è possibile passare un valore che rappresenta un risultato alternativo.

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

La funzione DIVIDE è stata progettata per gestire automaticamente i casi di divisione per zero. Se non viene passato un risultato alternativo e il denominatore è zero o BLANK, la funzione restituisce BLANK. Quando viene passato un risultato alternativo, questo viene restituito al posto di BLANK.

La funzione DIVIDE è comoda perché consente di evitare di dover prima testare il valore del denominatore nell'espressione. La funzione è inoltre ottimizzata meglio per il test del valore del denominatore rispetto alla funzione IF. Il miglioramento delle prestazioni è significativo perché il controllo della divisione per zero è dispendioso. L'uso di DIVIDE consente anche di ottenere un'espressione più concisa ed elegante.

Esempio

L'espressione di misura seguente genera una divisione sicura, ma comporta l'uso di quattro funzioni DAX.

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

Questa espressione di misura ottiene lo stesso risultato, ma in modo più efficiente ed elegante.

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

Consigli

Si consiglia di usare la funzione DIVIDE ogni volta che il denominatore è un'espressione che potrebbe restituire zero o BLANK.

Se il denominatore è un valore costante, è consigliabile usare l'operatore di divisione. In questo caso, la riuscita della divisione è garantita e l'espressione offrirà prestazioni migliori perché vengono evitate verifiche non necessarie.

Valutare attentamente se la funzione DIVIDE deve restituire un valore alternativo. Per le misure, la progettazione consigliata prevede in genere la restituzione di BLANK. La restituzione di BLANK è consigliata perché per impostazione predefinita gli oggetti visivi del report eliminano i raggruppamenti quando i riepiloghi sono BLANK. Questo consente all'oggetto visivo di concentrare l'attenzione sui gruppi in cui sono presenti dati. Quando necessario, in POWER BI, è possibile configurare l'oggetto visivo per visualizzare tutti i gruppi (che restituiscono valori o BLANK) nel contesto di filtro abilitando l'opzione Mostra elementi senza dati.