A diferença entre SUM Vs SUMX no LuckyTemplates

A diferença entre SUM Vs SUMX no LuckyTemplates

Ainda há muita confusão sobre a diferença entre vs no LuckyTemplates. Este é um conhecimento fundamental que os usuários precisam dominar, pois ambas as funções podem ser utilizadas em diferentes cenários, mas há casos em que uma é mais eficiente que a outra. Você pode assistir ao vídeo completo deste tutorial na parte inferior deste blog.

Vou me concentrar em um exemplo aqui que mostraria a distinção entre os dois. Mas antes de entrar nesse exemplo, é importante entender a diferença entre uma função de agregação e uma função de iteração.

Índice

Agregadores x Iteradores

Quando se trata de DAX, existem dois tipos de mecanismos de cálculo: os agregadores e os iteradores.

As funções de agregação incluem SUM , , , e . Os iteradores, por outro lado, são funções que possuem um X no final, como SUMX .

As funções de iteração passam por cada linha de uma tabela para adicionar lógica a cada uma dessas linhas.

As funções de agregação examinam toda a coluna restante depois que o contexto é colocado em uma fórmula. A partir daí, uma única agregação é feita para toda a coluna de uma só vez.

SUM como agregador

Como o SUM é usado como um agregador?

A diferença entre SUM Vs SUMX no LuckyTemplates

Neste exemplo, vou calcular a receita total nos dados de amostra fornecidos.

O contexto é sempre importante aqui. Neste caso, cada data específica é o contexto de cada resultado específico.

A diferença entre SUM Vs SUMX no LuckyTemplates

Se eu me aprofundar nesta tabela, isso mostrará que há um relacionamento direto fluindo de Date para a tabela Sales .

A diferença entre SUM Vs SUMX no LuckyTemplates

Então, se eu olhar para os dados trabalhando sob este modelo, é assim que tudo se encaixa.

A diferença entre SUM Vs SUMX no LuckyTemplates

Portanto, o relacionamento está vinculado à coluna Order Date aqui. Depois que as datas específicas dessa coluna são filtradas, os resultados correspondentes são mostrados na coluna Receita.

A partir daí, o SUM faria apenas um grande cálculo dos resultados filtrados.

SUMX como um iterador

Agora, vou usar SUMX nos mesmos dados de amostra para que você possa ver a diferença. Na verdade, posso calcular essa receita sem tocar na coluna Receita.

Quando a função SUMX for utilizada, ela sempre pedirá uma tabela. Observe que uma tabela física ou uma tabela virtual pode ser usada aqui.

A diferença entre SUM Vs SUMX no LuckyTemplates

Para chegar à Receita, vou escolher a tabela Vendas. Em seguida, colocarei uma expressão, que pode ser uma medida ou uma coluna específica dessa tabela nessa fórmula, para que ela comece a executar a lógica em cada linha. A expressão, conforme explicado aqui, retorna a soma de uma expressão avaliada para cada linha da tabela.

A diferença entre SUM Vs SUMX no LuckyTemplates

Como os dados de amostra incluem a Quantidade do pedido, vou usá-la aqui para obter o Total. Também vou usar o preço unitário.

A diferença entre SUM Vs SUMX no LuckyTemplates

Depois de arrastar essa fórmula para o relatório, os resultados são exatamente os mesmos.

A diferença entre SUM Vs SUMX no LuckyTemplates

Claro, ambos estão mostrando os mesmos resultados porque ambos estão derivando dados das mesmas duas colunas – a Quantidade do Pedido e o Preço Unitário.

A diferença entre SUM Vs SUMX no LuckyTemplates

Por que usar o SUMX se ele produz o mesmo resultado que o SUM ?

Com o SUMX, a lógica é aplicada não apenas a uma coluna inteira, mas a cada linha dessa coluna. Na verdade, eu poderia excluir a coluna Receita e ainda recuperar resultados específicos.

Então imagine essa lógica sendo aplicada em cada linha. Ele multiplica a quantidade do pedido e o preço unitário da 1ª linha e os salva na memória. Ele faz a mesma coisa na 2ª linha e em todas as outras linhas depois disso, salvando cada resultado individual.

Isso significa que, no final, o que está sendo usado para calcular o SUMX não são os dados físicos da tabela, mas os resultados salvos na memória .


Trabalhando com funções de iteração no DAX
usando funções de iteração SUMX e AVERAGEX no LuckyTemplates
Modelo de dados do LuckyTemplates para análise de cenário avançada usando DAX

Conclusão

Espero ter conseguido explicar a principal diferença entre SUM e SUMX no LuckyTemplates, especialmente para aqueles que ainda estão entendendo o que o LuckyTemplates pode realmente fazer.

A regra geral é se for um cenário simples e direto que pode ser resolvido por uma função de agregação, use SUM. Mas se for necessária uma lógica mais avançada, use SUMX.

SUMX também será útil nos casos em que você tiver de milhares a milhões de linhas. Contanto que as tabelas e colunas referenciadas em suas medidas estejam lá, o uso de funções de iteração tornaria o processo mais eficiente.

Tudo de bom,


Colunas calculadas no SharePoint | Uma visão geral

Colunas calculadas no SharePoint | Uma visão geral

Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.

Atributos pré-atentivos: como isso pode afetar seu relatório

Atributos pré-atentivos: como isso pode afetar seu relatório

Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.

Variáveis ​​e expressões dentro do editor do Power Query

Variáveis ​​e expressões dentro do editor do Power Query

Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

Como salvar e carregar um arquivo RDS em R

Como salvar e carregar um arquivo RDS em R

Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.