Filtrando e contando com DAX

Funções DAX no Power BI

Maarten Van den Broeck

Content Developer at DataCamp

Funções de filtro

  • Filtros são aplicados no contexto de filtro
  • Filtros têm precedência sobre qualquer visual
Total Sales = SUM(Orders[Sales])

Funções DAX no Power BI

Funções de filtro

  • Filtros são aplicados no contexto de filtro
  • Filtros têm precedência sobre qualquer visual
Total Sales = SUM(Orders[Sales])
CALCULATE(<expression>, 
            <filter1> , [<filter2> [, ...]])
  • Usado com funções intermediárias
Total Sales ALL = CALCULATE(
                    [Total Sales],
                    ALL(Orders))

$$ $$ $$

Região Total Sales
Central $501,239.89
East $678,781.24
South $391,721.91
West $725,457.82
TOTAL $2,297,200.86
Funções DAX no Power BI

Funções de filtro

  • Filtros são aplicados no contexto de filtro
  • Filtros têm precedência sobre qualquer visual
Total Sales = SUM(Orders[Sales])
CALCULATE(<expression>, 
            <filter1> , [<filter2> [, ...]])
  • Usado com funções intermediárias
Total Sales ALL = CALCULATE(
                    [Total Sales],
                    ALL(Orders))

$$ $$ $$

Região Total Sales Total Sales ALL
Central $501,239.89 $2,297,200.86
East $678,781.24 $2,297,200.86
South $391,721.91 $2,297,200.86
West $725,457.82 $2,297,200.86
TOTAL $2,297,200.86 $2,297,200.86
Funções DAX no Power BI

Mais opções de filtro

  • FILTER(<table>, <filter>)
    • Retorna uma tabela filtrada
Total Sales Chuck = 
CALCULATE(
    [Total Sales],
    FILTER(Fact_Orders,
        RELATED(Dim_Sales[Salesperson]) = "Chuck"))
Funções DAX no Power BI

Mais opções de filtro

  • FILTER(<table>, <filter>)
    • Retorna uma tabela filtrada
Total Sales Chuck = 
CALCULATE(
    [Total Sales],
    FILTER(Fact_Orders,
        RELATED(Dim_Sales[Salesperson]) = "Chuck"))
Total Sales Total Sales Chuck
$2,297,200.86 $235,856.05

$$

  • RELATED() retorna valores de outra tabela
Funções DAX no Power BI

Mais opções de filtro

  • CROSSFILTER(<col1>, <col2>, <direction>)
    • Define a direção de cross-filter entre duas colunas

Relação de mão única entre duas tabelas, Fact_Orders e Dim_Returns

CROSSFILTER(Dim_Returns[Order ID], 
            Fact_Orders[Order ID],
            Both)
  • Sobrescreve a direção do relacionamento no modelo de dados
Funções DAX no Power BI

Benefícios de filtrar no DAX

  • Melhora a performance
    • Filtra dados desnecessários
    • Define relacionamentos específicos entre tabelas
  • Reutilização
    • Reaproveita outras medidas calculadas
  • Cálculos mais complexos
    • Sintaxe concisa
Funções DAX no Power BI

Contagem

  • COUNT(<column>)
    • Retorna a quantidade de linhas com números, datas ou strings em uma coluna
  • COUNTA(<column>)
    • Retorna a quantidade de linhas com números, datas, strings ou booleanos em uma coluna
  • COUNTBLANKS(<column>)
    • Retorna a quantidade de linhas em branco
  • DISTINCTCOUNT(<column>)
    • Retorna a quantidade de valores distintos em uma coluna
  • COUNTROWS(<table>)
    • Retorna a quantidade de linhas com números, datas e strings em uma tabela
Funções DAX no Power BI

Vamos praticar!

Funções DAX no Power BI

Preparing Video For Download...