Funções iteradoras

Funções DAX no Power BI

Maarten Van den Broeck

Content Developer at DataCamp

Funções iteradoras

  • Itera por cada linha de uma tabela para executar uma expressão

SUMX(<table>, <expression>) AVERAGEX(<table>, <expression>)

  • X significa eXpression
  • Permitem cálculos avançados por linha
Funções DAX no Power BI

Funções iteradoras: SUMX()

Exemplo de coluna calculada
Cost = Fact_Orders[Sales] - Fact_Orders[Profit]
Total Costs = SUM(Fact_Orders[Cost])
Sales Profit Cost
$77.88 $3.89 $73.99
$22.72 $10.22 $12.50
... ... ...
Total Costs
$2,569
Funções DAX no Power BI

Funções iteradoras: SUMX()

Exemplo de coluna calculada
Cost = Fact_Orders[Sales] - Fact_Orders[Profit]
Total Costs = SUM(Fact_Orders[Cost])
Sales Profit Cost
$77.88 $3.89 $73.99
$22.72 $10.22 $12.50
... ... ...
Total Costs
$2,569
Exemplo de função iteradora
Total Costs SUMX = 
SUMX(Fact_Orders,
     Fact_Orders[Sales] - Fact_Orders[Profit])
Total Costs SUMX
$2,569
Funções DAX no Power BI

Filtrando funções iteradoras

  • Use funções de filtro, como FILTER(), para retornar uma tabela filtrada
SUMX(
    FILTER(
        <table>,
        <filter>),
    <expression>)
Total Costs East SUMX = 
SUMX(
    FILTER(
        Fact_Orders,
        Fact_Orders[Region] = "East"),
    Fact_Orders[Sales] - Fact_Orders[Profit])
Funções DAX no Power BI

Filtrando funções iteradoras

  • Use funções de filtro, como FILTER(), para retornar uma tabela filtrada
SUMX(
    FILTER(
        <table>,
        <filter>),
    <expression>)
Total Costs East SUMX = 
SUMX(
    FILTER(
        Fact_Orders,
        Fact_Orders[Region] = "East"),
    Fact_Orders[Sales] - Fact_Orders[Profit])

$$ $$ $$ $$ $$ $$

Região Custos Totais Custos Totais Leste SUMX
Central $501,239.89
Leste $678,781.24 $678,781.24
Sul $391,721.91
Oeste $725,457.82
TOTAL $2,297,200.86 $678,781.24
Funções DAX no Power BI

Funções iteradoras: RANKX()

RANKX(
    <table>,
    <expression>)
  • Classifique regiões por custos totais
Total Costs RANKX = 
RANKX(
    ALL(Dim_Sales[Region]),
    [Total Costs])
  • Use ALL() para avaliar todas as linhas da tabela de dimensão
Funções DAX no Power BI

Funções iteradoras: RANKX()

RANKX(
    <table>,
    <expression>)
  • Classifique regiões por custos totais
Total Costs RANKX = 
RANKX(
    ALL(Dim_Sales[Region]),
    [Total Costs])
  • Use ALL() para avaliar todas as linhas da tabela de dimensão

$$ $$ $$

Região Custos Totais Custos Totais RANKX
Central $725,457.82 1
Leste $678,781.24 2
Sul $501,239.89 3
Oeste $391,721.91 4
Funções DAX no Power BI

Operadores no DAX

Operadores de comparação
Operador Significado
= Igual a
== Igual estrito
> Maior que
< Menor que
>= Maior ou igual a
<= Menor ou igual a
<> Diferente de
Funções DAX no Power BI

Operadores no DAX

Operadores de comparação
Operador Significado
= Igual a
== Igual estrito
> Maior que
< Menor que
>= Maior ou igual a
<= Menor ou igual a
<> Diferente de
Operador de texto
Operador Significado Exemplo
& Concatena textos [City]&", "&[State]
Funções DAX no Power BI

Operadores no DAX

Operadores de comparação
Operador Significado
= Igual a
== Igual estrito
> Maior que
< Menor que
>= Maior ou igual a
<= Menor ou igual a
<> Diferente de
Operador de texto
Operador Significado Exemplo
& Concatena textos [City]&", "&[State]
Operadores lógicos
Operador Significado Exemplo
&& condição AND ([City] = "Bru") && ([Return] = "Yes"))
|| condição OR ([City] = "Bru") || ([Return] = "Yes"))
IN { } OR por linha Product[Color] IN {"Red", "Blue", "Gold"}
Funções DAX no Power BI

Lesson[Knowledge] IN {"Poor", "Great", "Awesome!"}

Funções DAX no Power BI

Preparing Video For Download...