Filteren en tellen met DAX

DAX-functies in Power BI

Maarten Van den Broeck

Content Developer at DataCamp

Filterfuncties

  • Filters worden toegepast op de filtercontext
  • Filters gaan boven elk visueel
Total Sales = SUM(Orders[Sales])

DAX-functies in Power BI

Filterfuncties

  • Filters worden toegepast op de filtercontext
  • Filters gaan boven elk visueel
Total Sales = SUM(Orders[Sales])
CALCULATE(<expression>, 
            <filter1> , [<filter2> [, ...]])
  • Gebruikt met tussenliggende functies
Total Sales ALL = CALCULATE(
                    [Total Sales],
                    ALL(Orders))

$$ $$ $$

Regio Total Sales
Central $501,239.89
East $678,781.24
South $391,721.91
West $725,457.82
TOTAAL $2,297,200.86
DAX-functies in Power BI

Filterfuncties

  • Filters worden toegepast op de filtercontext
  • Filters gaan boven elk visueel
Total Sales = SUM(Orders[Sales])
CALCULATE(<expression>, 
            <filter1> , [<filter2> [, ...]])
  • Gebruikt met tussenliggende functies
Total Sales ALL = CALCULATE(
                    [Total Sales],
                    ALL(Orders))

$$ $$ $$

Regio 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
TOTAAL $2,297,200.86 $2,297,200.86
DAX-functies in Power BI

Meer filteropties

  • FILTER(<table>, <filter>)
    • Geeft een gefilterde tabel terug
Total Sales Chuck = 
CALCULATE(
    [Total Sales],
    FILTER(Fact_Orders,
        RELATED(Dim_Sales[Salesperson]) = "Chuck"))
DAX-functies in Power BI

Meer filteropties

  • FILTER(<table>, <filter>)
    • Geeft een gefilterde tabel terug
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() haalt waarden op uit een andere tabel
DAX-functies in Power BI

Meer filteropties

  • CROSSFILTER(<col1>, <col2>, <direction>)
    • Bepaalt de kruisbfilterrichting tussen twee kolommen

Relatie in één richting tussen twee tabellen, Fact_Orders en Dim_Returns

CROSSFILTER(Dim_Returns[Order ID], 
            Fact_Orders[Order ID],
            Both)
  • Overschrijft de relatierichting van het datamodel
DAX-functies in Power BI

Voordelen van filteren in DAX

  • Betere performance
    • Filter onnodige data weg
    • Definieer specifieke relaties tussen tabellen
  • Hergebruik
    • Verwijs naar andere berekende metingen
  • Complexere berekeningen
    • Compacte syntax
DAX-functies in Power BI

Tellen

  • COUNT(<column>)
    • Geeft het aantal rijen met nummers, datums of strings in een kolom
  • COUNTA(<column>)
    • Geeft het aantal rijen met nummers, datums, strings of booleans in een kolom
  • COUNTBLANKS(<column>)
    • Geeft het aantal lege rijen
  • DISTINCTCOUNT(<column>)
    • Geeft het aantal unieke waarden in een kolom
  • COUNTROWS(<table>)
    • Geeft het aantal rijen met nummers, datums en strings in een tabel
DAX-functies in Power BI

Laten we oefenen!

DAX-functies in Power BI

Preparing Video For Download...