Função DIVIDIR 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 DIVIDIR, você deve passar expressões de numerador e denominador. Opcionalmente, pode transmitir um valor que representa um resultado alternativo.

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

A função DIVIDE foi concebida 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 é transmitido, é devolvido em vez de BLANK.

A função DIVIDIR é 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 é cara. O uso adicional de 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 DIVIDIR sempre que o denominador for 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 terá uma garantia de sucesso e a expressão terá um desempenho superior dado que vai evitar testes desnecessários.

Considere cuidadosamente se a função DIVIDE deve retornar um valor alternativo. Para medidas, geralmente é um design melhor que elas retornem BLANK. Retornar BLANK é melhor 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, você pode configurar o visual para exibir todos os grupos (que retornam valores ou BLANK) dentro do contexto de filtro habilitando a opção Mostrar itens sem dados .