Módulo 7: DAX essencial: contexto é tudo

Aula 2 de 4

Coluna calculada x medida x tabela calculada

O erro conceitual mais comum de quem vem do Excel.

15 minutos de leitura


AspectoColuna calculadaMedida
Quando calculaNa atualização dos dadosNo momento em que o visual pede
Onde ficaArmazenada na memória do modeloSó a fórmula é armazenada
ContextoDe linhaDe filtro
Responde a filtro do usuárioNão (o valor é fixo)Sim
UsoEixo, filtro, segmentação, relacionamentoValor exibido no visual
CustoMemóriaCPU no momento da consulta

Exemplos lado a lado

DAXCasos legítimos de coluna calculada
-- Precisa referenciar outra tabela via relacionamentoCategoria Produto = RELATED( dProduto[Categoria] ) -- Vai virar eixo do gráficoFaixa Etária =SWITCH( TRUE(),    dCliente[Idade] < 25, "1. Até 24",    dCliente[Idade] < 40, "2. 25 a 39",    dCliente[Idade] < 60, "3. 40 a 59",    "4. 60 ou mais") -- Coluna de ordenação para outra coluna de textoOrdem Faixa Etária =SWITCH( TRUE(),    dCliente[Idade] < 25, 1,    dCliente[Idade] < 40, 2,    dCliente[Idade] < 60, 3,    4)

Tabelas calculadas

DAXTabelas calculadas úteis no dia a dia
-- Tabela de apoio para segmentação sem relacionamentodPeriodo =DATATABLE(    "Rotulo", STRING, "Dias", INTEGER, "Ordem", INTEGER,    {        { "Últimos 7 dias",  7,  1 },        { "Últimos 30 dias", 30, 2 },        { "Últimos 90 dias", 90, 3 },        { "Últimos 365 dias",365,4 }    }) -- Dimensão criada a partir de duas fatosdVendedor =DISTINCT(    UNION(        SELECTCOLUMNS( fVendas, "Vendedor", fVendas[Vendedor] ),        SELECTCOLUMNS( fMetas,  "Vendedor", fMetas[Vendedor] )    ))

Exercício prático

Identifique no seu modelo três colunas calculadas que deveriam ser medidas e duas medidas que na verdade deveriam ser colunas. Faça a migração e meça o tamanho do arquivo antes e depois.