Partilhar via


DIVIDE função vs. operador de divisão (/)

Como um modelador de dados, quando você escreve uma expressão DAX para dividir um numerador por um denominador, você pode optar por usar a função DIVIDE ou o operador de divisão (/ - barra para frente).

Ao usar a função DIVIDE, você deve passar expressões de numerador e denominador. Opcionalmente, você pode passar um valor que representa um resultado alternativo .

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

A função DIVIDE foi projetada para lidar automaticamente com casos de divisão por zero. Se um resultado alternativo não for passado e o denominador for zero ou BLANK, a função retornará BLANK. Quando um resultado alternativo é passado, ele é retornado em vez de BLANK.

A função DIVIDE é conveniente porque evita que a sua expressão tenha de testar primeiro o valor do denominador. A função também é melhor otimizada para testar o valor do denominador do que a função IF. O ganho de desempenho é significativo, uma vez que a verificação da divisão por zero é custosa. O uso adicional DIVIDE resulta em uma expressão mais concisa e elegante.

Exemplo

A expressão de medida a seguir produz uma divisão segura, mas envolve o uso de quatro funções DAX.

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

Esta expressão de medida alcança o mesmo resultado, mas de forma mais eficiente e elegante.

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

Recomendações

É recomendável usar a função DIVIDE sempre que o denominador seja uma expressão que possa retornar zero ou BLANK.

No caso de o denominador ser um valor constante, recomendamos que você use o operador de divisão. Neste caso, a divisão tem a garantia de sucesso, e sua expressão terá um desempenho melhor, pois evitará testes desnecessários.

Considere cuidadosamente se a função DIVIDE deve retornar um valor alternativo. Para as medidas, geralmente é melhor que retornem BLANK. É preferível retornar BLANK porque os visuais de relatório — por padrão — eliminam agrupamentos quando as sumarizações são BLANK. Permite que o visual concentre a atenção em grupos onde existem dados. Quando necessário, no Power BI, pode configurar o visual para exibir, dentro do contexto de filtro, todos os grupos (que retornam valores ou BLANK) ao habilitar a opção 'Mostrar itens sem dados'.