Metody vytváření DAX měr

DAX Functions in Power BI

Carl Rosseel

Curriculum Manager

Implicitní vs. explicitní míry

Implicitní

  • Automaticky vytvořené Power BI
  • Pochází přímo z databáze
  • Např.: Přetažením Sales do hodnot tabulky Power BI automaticky provede součet
  • Pomocí rozbalovací nabídky lze definovat agregaci: součet, průměr, počet, ...

Explicitní

  • Míry jsou definovány explicitně
  • Např.: Total Sales = SUM(Orders[Sales])
  • Nabízejí flexibilitu
DAX Functions in Power BI

Proč jsou explicitní míry preferovány

  • Snižuje nejasnosti ohledně účelu míry
    • Total Sales = SUM(Orders[Sales])
    • Total Sales je jasnější než Sales (SUM, AVG, MIN, ... ?)
  • Znovupoužitelné v jiných mírách
    • Total Sales East = CALCULATE([Total Sales],Orders[Region] = 'East')
  • Lze pojmenovat dle funkce
  • Usnadňuje údržbu složitých modelů
DAX Functions in Power BI

Osvědčené postupy

  • Seskupujte DAX míry dohromady:
    • Míry lze přesouvat do libovolné tabulky
    • Na rozdíl od vypočítaných sloupců, které patří ke konkrétní tabulce

Snímek obrazovky 2021-07-22 v 11.22.15.png

  • Formátujte a komentujte DAX kód:
    • Používejte odsazení pro lepší přehlednost
      • Shift Enter pro nový řádek
      • Tab pro odsazení
    • Přidávejte komentáře za //
DAX Functions in Power BI

Proměnné pro vylepšení vzorců

  • Ukládá výsledek výrazu jako pojmenovanou proměnnou
  • Lze použít jako argument v jiných mírách

  • Čtyři hlavní výhody:

    • Zlepšují výkon
    • Zlepšují čitelnost
    • Zjednodušují ladění
    • Snižují složitost

Syntaxe:

  • VAR <name> = <expression>
    • Název = název proměnné
    • DAX výraz vracející skalární hodnotu nebo tabulku
    • Následuje příkaz RETURN
DAX Functions in Power BI

Proměnné pro vylepšení vzorců – příklad

  • Vypočítejte loňské prodeje a uložte je jako proměnnou
VAR 
SALESPRIORYEAR = CALCULATE([SALES],SAMEPERIODLASTYEAR('DATE'))
RETURN
  • Použijte proměnnou ve vzorci
Sales growth = [Sales] - SALESPRIORYEAR
DAX Functions in Power BI

Proměnné pro vylepšení vzorců – příklad

  • Výsledný vzorec vypadá takto:
Sales growth = 

VAR 
SALESPRIORYEAR = CALCULATE([SALES],SAMEPERIODLASTYEAR('DATE'))
RETURN

Sales growth = [Sales] - SALESPRIORYEAR
DAX Functions in Power BI

Pojďme cvičit!

DAX Functions in Power BI

Preparing Video For Download...