DAX – jazyk pro datové modely Power Pivot a Power BI
S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.
DAX je jazyk, který používáme v Power Pivotu, v Power BI a také v SQL Server Analysis Services.
Výrazy jazyka DAX jsou v mnohém podobné vzorcům Excelu, ale v něčem jsou jiné. Jedním ze specifik jazyka (oproti vzorcům Excelu) je to, že výstupem funkce může být i tabulka.
Dva způsoby použití DAX v PowerPivotu a v Power BI
Výpočet nového sloupce
- Vytvoření sloupce, který je odvozený od jiných sloupců. Výsledkem je celý sloupec. Vzorce v tomto případě zapisujeme do prvního prázdného sloupce.Např. mám v jednom sloupci tržbu bez padesátiprocentní slevy. Pak do dalšího sloupečku dostanu cenu po slevě takto:
=[Revenue]*0,5
Vytvoření míry
- Vytvoření míry, tedy např. pro součet určitého sloupce. V Power Pivotu vzorce v tomto případě zapisujeme pod data – do spodní části okna. Je obvykle jedno, kterou buňku si pro zápis vybereme.
Např. součet všech tržeb dostanu takto:
=SUM([Revenue])
v Power Pivotu takto vzniká tzv. explicitní míra, ze které je možné vytvářet KPI.
Vytvoření tabulky založené na jiných tabulkách
- Obdobně jako v databázi můžete vytvářet "view", tedy tabulku, která zobrazuje data z jiných tabulek, ale sama je neukládá, je možné udělat něco podobného i v pomocí DAXu.
Např. výpis unikátních hodnot dostanu takto:
List of items = DISTINCT('original data'[Goods])
Více o vytváření těchto tabulek tady.
Podobnost vzorců v Excelu a DAX
- V zápisech DAX používáme odkazy na sloupce a na tabulky. Podobně jako u vzorců Excelu musím, v případě že se odkazuji na jinou tabulku než do které zapisuji vzorec, uvést také tabulku, ve které je sloupec. Jinými slovy:
- Je-li sloupec v jiné tabulce, vypadá vzorec např. takto:=SUM(názevtabulky[názevsloupce])
- Je-li sloupec ve stejné tabulce, vypadá vzorec např. takto:=SUM([názevsloupce])
- ALL – zrušení filtrů (DAX – Power Pivot, Power BI)
- ALLEXCEPT – zrušení všech filtrovacích kontextů až na jeden (DAX – Power Pivot, Power BI)
- AND – spojení dvou kritérií platících společně (DAX – Power Pivot, Power BI)
- CALCULATE – kombinace více funkcí (DAX – Power Pivot, Power BI)
- Calculation groups – zjednodušení výpočtů s více mírami současně
- COALESCE – najde první neprázdnou hodnotu (DAX – Power Pivot, Power BI)
- CONCATENATE (DAX – Power Pivot, Power BI)
- CONCATENATEX (DAX – Power Pivot, Power BI)
- CONTAINSSTRING, CONTAINSSTRINGEXACT – ověří přítomnost textu kdekoliv v textovém řetězci (DAX – Power Pivot, Power BI)
- COUNT – počet záznamů (DAX – Power Pivot, Power BI)
- COUNTROWS – spočítání řádků tabulky (DAX – Power Pivot, Power BI)
- COUNTX, COUNTAX – počet vybraných hodnot (DAX – Power Pivot, Power BI)
- CROSSJOIN – vytvoření všech kombinací ze dvou seznamů (DAX – Power Pivot, Power BI)
- DATATABLE – zadávání dat přímo v datovém modelu – bez externího připojení (DAX – Power Pivot, Power BI)
- Datumové funkce v DAXu (DAX – Power Pivot, Power BI)
- CALENDAR – funkce pro generování datumů v určitém období (DAX – Power Pivot, Power BI)
- CALENDARAUTO – automatický kalendář vytvořený funkcí (DAX – Power Pivot, Power BI)
- Co jsou časové dimenze, proč jsou tak důležité a jak je dělat
- DATEADD – hodnoty za období posunuté v čase o rok, kvartál, měsíc nebo den (DAX – Power Pivot, Power BI)
- DATEDIFF – rozdíl mezi dvěma kalendářními daty nebo časy
- DATESMTD, DATESQTD, DATESYTD – data od začátku měsíce / kvartálu / roku nebo podle nich vyfiltruje (DAX – Power Pivot, Power BI)
- FIRSTDATE, LASTDATE – první a nejpozdější datum z tabulky (DAX – Power Pivot, Power BI)
- Kdy používat ALL při zápisu SAMEPERIODLASTYEAR a dalších time intelligence funkcích
- Kumulativní součty s funkcí EARLIER (DAX – Power Pivot, Power BI)
- NEXTDAY, NEXTMONTH, NEXTQUARTER, NEXTYEAR, PREVIOUSDAY, PREVIOUSMONTH, PREVIOUSQUARTER, PREVIOUSYEAR – údaje z předchozího nebo následujícho časového období (DAX – Power Pivot, Power BI)
- OPENINGBALANCEYEAR, OPENINGBALANCEQUARTER, OPENINGBALANCEMONTH, CLOSINGBALANCEYEAR, CLOSINGBALANCEQUARTER, CLOSINGBALANCEMONTH – stav hodnoty na začátku / konci roku, kvartálu, měsíce (DAX – Power Pivot, Power BI)
- PARALLELPERIOD – posouvání v čase o určitý počet měsíců, kvartálů nebo let (DAX – Power Pivot, Power BI)
- SAMEPERIODLASTYEAR – porovnání s minulým rokem (DAX – Power Pivot, Power BI)
- TOTALYTD, TOTALQTD, TOTALMTD – kumulativní součty v čase (DAX – PowerPivot, Power BI)
- Zásadní rozdíl mezi funkcemi DATEADD a PARALLELPERIOD (DAX – Power Pivot, Power BI)
- DAX – porovnání konkrétního řádku se všemi řádky tabulky
- DISTINCT – výpis unikátních záznamů (DAX – Power Pivot, Power BI)
- DISTINCTCOUNT – počet unikátních záznamů (DAX – Power Pivot, Power BI)
- DIVIDE – dělení s ošetřením nuly (DAX – Power Pivot, Power BI)
- EXCEPT – zjištění odlišností v tabulkách (DAX – Power Pivot, Power BI)
- FILTER – vyfiltrování tabulky funkcí (DAX – Power Pivot, Power BI)
- FILTER vs VALUES vs KEEPFILTERS – co kdy použít?
- GENERATESERIES (DAX – Power Pivot, Power BI)
- GROUPBY – seskupování v datových modelech pomocí DAX (DAX – Power Pivot, Power BI)
- Hrajeme si s funkcemi SAMEPERIODLASTYEAR a TOTALYTD
- Hromadné nastavování RLS pro velké množství uživatelů
- IF – jednoduchá podmínka (DAX – Power Pivot, Power BI)
- IFERROR – hodnota v případě chyby (DAX – Power Pivot, Power BI)
- IN – operátor pro zjištění přítomnosti v množině hodnot (DAX – Power Pivot, Power BI)
- INTERSECT – nalezení společných řádků v tabulce (DAX – Power Pivot, Power BI)
- ISFILTERED a odebrání souhrnů ve vizuálu
- ISFILTERED vs ISINSCOPE – základní rozdíl
- Jak nezkazit datový model v Power BI – 7 fakt důležitých pravidel
- Korelační koeficient v Power BI
- LOOKUPVALUE – přiřazení správné hodnoty z jiné tabulky i bez relace (DAX – Power Pivot, Power BI)
- MIN, MAX – nejvyšší a nejnižší hodnoty (DAX – jazyk pro Power Pivot a Power BI)
- Míra pro průměrnou dobu trvání ve dnech a v pracovních dnech (DAX – Power Pivot, Power BI)
- Nadpis vizuálu, který dynamicky popisuje obsah
- NAMEOF – název sloupečku (DAX – Power Pivot, Power BI)
- NATURALINNERJOIN – vytvoření tabulky ze společných řádků jiných tabulek (DAX – Power Pivot, Power BI)
- NATURALLEFTOUTERJOIN – vytvoření tabulky spojením jiných tabulek přes levý vnější join (DAX – Power Pivot, Power BI)
- NETWORKDAYS – počet pracovních dní mezi dvěma daty (DAX – Power Pivot, Power BI)
- Nový DAX editor v Power BI Desktop
- OFFSET – hodnota z předchozího řádku (DAX – Power Pivot, Power BI)
- Operátory „&&“, „||“, a „&“ (DAX – Power Pivot, Power BI)
- OR – více podmínek, kde platí alespoň jedna z nich (DAX – Power Pivot, Power BI)
- PATH, PATHLENGTH, PATHITEM, PATHITEMREVERSE, PATHCONTAINS – funkce pro práci s hierarchiemi (DAX – Power Pivot, Power BI)
- Počet unikátních záznamů – podle více sloupců
- Power Pivot – implicitní míra, explicitní míra, KPI
- Princip používání measures aneb proč DAX není Excel
- Procentní podíl z položky ve vizuálu – DAX
- Proměnné v DAXu
- RANK.EQ – určení pořadí hodnot (DAX – Power Pivot, Power BI)
- RELATED – přiřazení hodnoty z jiné tabulky (DAX – Power Pivot, Power BI)
- RELATEDTABLE – přiřazení tabulky propojené relací (DAX – Power Pivot, Power BI)
- ROUND, ROUNDUP, ROUNDDOWN, MROUND – zaokrouhlovací funkce (DAX – Power Pivot, Power BI)
- Rychlá kalkulačka vytvořená v Power BI pomocí parametrů
- Rychlé zpřehlednění složitějšího zápisu v DAXu
- SELECTCOLUMNS – vybrat konkrétní sloupce z tabulky (DAX – Power Pivot, Power BI)
- SELECTEDVALUE – ukáže vybranou hodnotu (DAX – Power Pivot, Power BI)
- SUMMARIZE – seskupování v datových modelech (DAX – Power Pivot, Power BI)
- SUMMARIZECOLUMNS – seskupování hodnot v tabulce (DAX – Power Pivot, Power BI)
- SUMX – součet s podmínkou nebo mezivýpočtem (DAX – Power Pivot, Power BI)
- SUMX vs SUM – rozdíly v logice (DAX – Power Pivot, Power BI)
- SWITCH – výběr jedné z hodnot (DAX – Power Pivot, Power BI)
- TOJSON a TOCSV – převádění do JSONu a CSV (DAX – Power Pivot, Power BI)
- TOPN – funkce pro nalezení prvních N položek v tabulce (DAX – Power Pivot, Power BI)
- TREATAS – počítání s logikou relace, i když relace neexistuje (DAX – Power Pivot, Power BI)
- UNION – spojení více tabulek za sebe (DAX – Power Pivot, Power BI)
- USERPRINCIPALNAME – zobrazení uživatelského jména použité hlavně pro RLS (DAX – Power Pivot, Power BI)
- Více datumových sloupců v jedné tabulce – jak to zvládnout?
- Výpočet procenta zakázek splněných včas v Power BI
S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.
It is a really great resource!So much useful information and handy tips, thank you =)
consultant