Práce se zobrazením dotazů DAX
Pomocí zobrazení dotazů DAX v Power BI můžete zobrazit a pracovat s dotazy DAX (Data Analysis Expressions) v sémantických modelech.
Dotazy DAX
V Power BI se vzorce DAX používají k definování různých typů výpočtů pro vaše data, ale dají se také použít k definování zabezpečení rolí. Dotazy DAX lze na druhou stranu použít k vrácení dat z modelu.
Dotazy DAX se podobají dotazům SQL v tom, že vám můžou ukázat data, která už máte. Dotazy DAX nevytvoří položky v modelu ani vizuálech v sestavě.
Dotazy DAX mají dvě hlavní části:
- Příkaz EVALUATE , který je povinný. Určuje, co a jak se data vrací v dotazu.
- Příkaz DEFINE , který je volitelný. Umožňuje definovat vzorce DAX, například míru, která se má v dotazu použít. Míry vytvořené nebo aktualizované pomocí dotazu DAX DEFINE MEASURE jsou míry omezené na dotazy DAX, které běží pouze v kontextu dotazu DAX. Míry omezené na dotazy DAX je možné do modelu přidat pomocí aktualizačních akcí modelu CodeLens nebo aktualizovat model s tlačítkem Změny .
Další informace o tom, jak se používají dotazy, najdete v referenčních informacích k jazyku DAX.
Otevření zobrazení dotazu DAX
V Power BI Desktopu vyberte na levé straně ikonu zobrazení dotazu DAX.
V pracovním prostoru portálu služba Power BI nebo Prostředky infrastruktury zvolte v místní nabídce psát dotazy DAX.
Na stránce podrobností o sémantickém modelu portálu služba Power BI nebo Fabric vyberte v horní části stránky psát dotazy DAX.
Rozložení zobrazení dotazu DAX
Pojďme se podrobněji podívat na zobrazení dotazů DAX v Power BI Desktopu.
Zobrazení dotazu DAX má tyto prvky:
Pás karet
Pás karet zobrazení dotazu DAX obsahuje běžné akce, které se používají při psaní dotazů DAX.
Pojďme se podrobněji podívat na prvky na pásu karet:
Formátovat dotaz
Vyberte tlačítko Formátovat pás karet dotazu nebo pomocí kombinace kláves SHIFT+ALT+F naformátujte aktuální dotaz. Dotaz se odsadí pomocí karet. Funkce DAX se změní na VELKÁ PÍSMENa a přidají se další řádky. Formátování dotazu DAX se považuje za osvědčený postup a zlepšuje čitelnost dotazů DAX. Formátování se také odsadí tak, aby se oddíly dotazu sbalily a rozbalily.
Komentář a zrušení komentáře
Výběrem tlačítka Komentář na pásu karet přidejte dvojité zpětné lomítko (//) na začátek řádku, kde je kurzor nebo všechny vybrané řádky. Tento komentář vyhodnocuje řádky a při spuštění dotazu DAX se tyto řádky ignorují.
Výběrem tlačítka Zrušit komentář na pásu karet odeberte // na začátku libovolného řádku, na kterém je kurzor, nebo všechny vybrané řádky. Nefunguje na řádcích, kde se přidá zápis víceřádkových komentářů.
K přepínání mezi komentářem a zrušením komentáře můžete také použít kombinaci kláves CTRL+/.
hledání a nahrazování
Vyberte tlačítko Najít na pásu karet nebo pomocí kombinace kláves CTRL+F vyhledejte text v editoru dotazů DAX. Funkce Najít obsahuje možnosti, jak rozlišovat malá a velká písmena, shodovat celé slovo, používat regulární výraz a cyklicky procházet všechny shody pro aktuální dotaz. Dvojitou šipku můžete také vybrat vlevo od vyhledávacího pole a zadat nahradit.
Na pásu karet vyberte tlačítko Nahradit nebo pomocí kombinace kláves CTRL+H vyhledejte a nahraďte text v editoru dotazů DAX. Nahrazení obsahuje možnosti pro zachování případu a nahrazení po jednom nebo všech najednou.
Paleta příkazů
Vyberte tlačítko na pásu karet palety příkazů nebo pomocí kombinace kláves CTRL+ALT+P otevřete pole palety příkazů. Můžete vyhledat další akce editoru dotazů DAX a zobrazit jejich přidružené klávesové zkratky.
Panel příkazů
Panel příkazů zobrazení dotazu DAX obsahuje nejdůležitější akce při použití zobrazení dotazu DAX.
Spuštění a zrušení
Tlačítko Spustit spustí dotaz DAX nebo vybrané řádky dotazu. Stav dotazu po spuštění se zobrazí na dolním stavovém řádku.
Když je dotaz spuštěný, tlačítko se stane tlačítkem Zrušit , které se dá použít k zastavení spuštěného dotazu.
Aktualizace modelu pomocí změn
Tlačítko Aktualizovat model se změnami přidá nebo přepíše míry modelu pomocí vzorců DAX z měr vymezených dotazem DAX. Míry omezené na dotazy DAX jsou míry v bloku DEFINE MEASURE . Alternativně můžete přidat nebo přepsat míry modelu jednotlivě pomocí textu CodeLens, který se zobrazí nad každým z nich.
Editor dotazů DAX
Zobrazení dotazu DAX obsahuje editor dotazů, ve kterém můžete psát a upravovat dotazy. Je to víc než jen větší řádek vzorců DAX. Je výkonnější a má mnoho podobností s editorem DAX dostupným ve VS Code.
Editor dotazů DAX obsahuje následující prvky:
Návrhy a IntelliSense
Zadejte svůj dotaz a získejte pomoc s návrhy a IntelliSense při úpravách.
Pomocí klávesy ENTER nebo TAB můžete přidat zvýrazněnou technologii IntelliSense nebo SHIFT+ENTER nebo ALT+ENTER a přesunout se na jiný řádek bez přidání možnosti IntelliSense. Výběrem klávesy ESC zavřete všechny překryvy.
Najetí myší na zobrazení vzorců měr
Když je míra zahrnutá do dotazu DAX, můžete na ni najet myší a zobrazit vzorec, název a popis.
Výběrem zobrazíte rychlé akce měrné žárovky.
Výběrem míry v příkazu EVALUATE v dotazu bez příkazu DEFINE se zobrazí žárovka rychlých akcí. Výběrem možnosti Definovat nebo Definovat s odkazy vytvořte příkaz DEFINE se vzorcem této míry se vzorci jazyka DAX s referenční mírou nebo bez.
Aktualizace měr modelu pomocí CodeLensu
Použití funkce DEFINE MEASURE je užitečné při vytváření měr tím, že je napřed umožníte vytvořit jako míry vymezené dotazem DAX. V jednom okně můžete upravit více měr a potom spustit dotaz, abyste viděli výsledky všech nebo jenom některých z nich s konkrétními sloupci seskupit podle sloupců. V zobrazení sestavy nemusíte vytvářet vizuál tabulky a přepínat mezi vzorci měr a zpět. CodeLens tento krok dále provede zadáním výzev, když už míra v modelu existuje nebo pokud ne, může ji přidat.
CodeLens je nakliknutelný text, který se zobrazuje nad blokem DEFINE MEASURE. V případě měr vymezených dotazem DAX, které ještě nejsou v modelu , se zobrazí model Aktualizace: Zobrazí se nová míra CodeLens, která při kliknutí přidá míru modelu. U měr s vymezeným oborem dotazu DAX, které už jsou v modelu přítomné, a když se vzorec DAX s vymezenou mírou DAX liší, zobrazí se model Aktualizace: Přepsat míru CodeLens, která změní míru modelu na tento vzorec DAX po kliknutí.
Další možností je přidat nebo přepsat více měr najednou kliknutím na tlačítko Aktualizovat model se změnami na panelu příkazů .
Pracovní postup aktualizace míry
Rychlé akce žárovky a CodeLens je možné použít společně v úplném pracovním postupu:
- V místní nabídce míry zvolte Rychlé dotazy a potom vyhodnoťte, aby se dotaz vytvořil pro vás na nové kartě Dotaz.
- Výběrem míry v dotazu definujte nebo definujte s odkazy a přidejte příkaz DEFINE.
- Aktualizujte míru výrazem a pak spusťte dotaz DAX, aby se změna zobrazila.
- Jakmile se změna zobrazí podle očekávání, použijte model CodeLens Update: Přepsat míru a uložte ji zpět do modelu.
Tady je vizuální způsob, jak porozumět pracovnímu postupu:
Mřížka výsledků
Při spuštění dotazu se výsledky zobrazí v mřížce Výsledků .
Pokud v editoru dotazů existuje více než jeden příkaz EVALUATE, můžete vrátit více výsledků. K přepínání mezi nimi můžete použít rozevírací seznam Výsledek . Tlačítko Kopírovat zkopíruje celou mřížku jako tabulku s oddělovači tabulátoru se záhlavími. Mřížku můžete změnit pomocí šipek pravého horního rohu nebo ručně s kurzorem na hranici mezi mřížkou výsledků a editorem dotazů.
Pokud výsledkem dotazu je chyba, zobrazí se v mřížce výsledků.
Tlačítko kopírování přenese chybu do schránky. Začátek chyby označuje, kde je v dotazu chyba. Na obrázku nad chybou je:
Dotaz (4, 23) Hodnotu "Sales 2" nelze určit. Buď sloupec neexistuje, nebo pro tento sloupec neexistuje žádný aktuální řádek."
A "Dotaz (4, 23)" označuje chybu na řádku 4 a na znaku 23.
Karty dotazů
Zobrazení dotazu DAX může mít více karet dotazů, které je možné přejmenovat nebo odebrat. Zobrazují také aktuální stav dotazu.
Každá karta obsahuje indikátor stavu:
- Před spuštěním dotazu se nezobrazí žádný indikátor.
- Zelená značka zaškrtnutí označuje úspěšné spuštění dotazu.
- Červený křížek značí, že došlo k chybě.
- Vyplněný čtverec v kruhu označuje, že dotaz byl zrušen.
- Hodiny označují, že dotaz je spuštěný.
Dotazy se můžou spouštět na pozadí, takže můžete pokračovat v práci na dalších kartách dotazů.
Ukládání dotazů DAX
Při ukládání z Power BI Desktopu se do souboru ukládají karty dotazu v zobrazení dotazu DAX, takže můžete pokračovat tam, kde jste skončili, když soubor znovu otevřete. Pokud k uložení projektu Power BI použijete vývojářský režim, každá karta dotazu se zahrne jako soubor .dax ve složce DAXQueries složky sémantického modelu nebo ve složce sestavy, pokud jsou vytvořeny v živé propojené sestavě. Další informace najdete v dokumentaci k režimu vývojáře Power BI.
V současné době nemůžete zobrazit ani upravit dotazy DAX přidané v Power BI Desktopu v služba Power BI. Čtenáři sestavy nebo sémantického modelu nevidí dotazy DAX uložené sémantickým modelem.
Při psaní dotazů DAX z portálu služba Power BI nebo Fabric se karty zobrazení dotazů DAX zahodí při zavření.
Podokno Data
Podokno Data zobrazuje položky v modelu, které vám pomůžou psát dotazy. Cesty pro úpravy většiny těchto položek jsou v zobrazení dotazu blokované.
Rychlé dotazy
Místní nabídka podokna Data obsahuje rychlé dotazy. Pomocí rychlých dotazů můžete vytvářet dotazy na nové kartě dotazu pro tabulky, sloupce a míry. Rychlé dotazy jsou navržené tak, aby byly zvýšení produktivity pro běžné úlohy a sestavené tak, aby je bylo možné snadno upravit. Všechny rychlé dotazy se vytvoří na nové kartě dotazu a spustí se automaticky.
Kdekoliv
Definujte všechny míry v modelu , vytvoří dotaz se všemi vzorci měr zobrazenými v dotazu. Snadno prohledávejte všechny vzorce měr.
Definování nové míry vytvoří dotaz s definovacím blokem míry. Tuto možnost použijte k vytvoření vlastní míry v zobrazení dotazu DAX a až budete připraveni, přidejte ji do modelu.
Tabulky
Zobrazení prvních 100 řádků vytvoří dotaz pomocí selectCOLUMNS() k zobrazení prvních 100 řádků tabulky. Sloupce jsou uvedené na jednotlivých řádcích, aby bylo možné snadno upravit přidáváním řádků do komentáře. K určení pořadí řazení je také zahrnuta funkce ORDER BY.
Zobrazení statistiky sloupců vytvoří dotaz zobrazující statistické informace pro každý sloupec v tabulce. Podívejte se na řadu vzorců, jak agregovat sloupce jako MIN, MAX, AVERAGE, COUNT a další.
Definujte všechny míry v této tabulce, vytvoří dotaz pomocí vzorců míry této tabulky zobrazených v dotazu.
Sloupce
Zobrazení náhledu dat vytvoří dotaz pomocí funkce DISTINCT() k zobrazení hodnot sloupce.
Zobrazení statistiky sloupců vytvoří dotaz zobrazující statistické informace pro tento konkrétní sloupec. Podívejte se na řadu vzorců, jak agregovat sloupec jako MIN, MAX, AVERAGE, COUNT a další. Vrácený dotaz se liší v závislosti na datovém typu sloupce, který zobrazuje různé statistiky pro číselné, textové a datové sloupce.
Opatření
Vyhodnocení vytvoří dotaz, který zobrazí výsledek míry. Funkce SUMMARIZECOLUMNS() se používá, takže můžete přidat libovolnou skupinu podle sloupců a zobrazit míru podle konkrétních skupin, jako je Země, Produkt atd.
Definování a vyhodnocení vytvoří dotaz, který zobrazí výsledek míry a zobrazí vzorec míry v příkazu DEFINE, který pak lze upravit.
Definujte pomocí odkazů a vyhodnocení vytvoří dotaz, který zobrazí výsledek míry a zobrazí nejen vzorec míry v příkazu DEFINE, který lze upravit, ale také všechny ostatní míry odkazované ve vzorci míry. Upravte libovolnou část v plném kontextu míry.
Získání vizuálních dotazů DAX z Analyzátor výkonu
Vizuály v zobrazení sestav získávají data z modelu vytvořením dotazu DAX. Vizuální dotaz lze zobrazit v zobrazení dotazu DAX pomocí Analyzátor výkonu. Analyzátor výkonu můžete získat přehled o tom, proč vizuál může zobrazovat neočekávanou hodnotu nebo jednoduše jako způsob, jak rychle spustit dotaz, který můžete dále upravit.
V zobrazení sestavy přejděte na pás karet Optimalizovat a vyberte Analyzátor výkonu. Vyberte Spustit nahrávání a pak aktualizujte vizuály. V následující tabulce rozbalte vizuál a zobrazte možnosti kopírování dotazu nebo spuštění v zobrazení dotazu DAX. Výběr možnosti Spustit v zobrazení dotazu DAX vezme vizuální dotaz, přidá ho jako novou kartu Dotaz v zobrazení dotazu DAX a pak ho spustí.
Zobrazení dotazů DAX a živé připojení v Power BI Desktopu
Power BI Desktop se může živě připojit k publikovanému sémantickému modelu Power BI kliknutím na Připojit , když je v datovém centru OneLake vybraný sémantický model. V pravém dolním rohu zobrazení sestavy se zobrazí živé připojení k sémantickému modelu Power BI. Zobrazení dotazů DAX se dá použít k zápisu dotazů DAX při živém připojení.
Míry modelu
Při živém připojení k publikovanému sémantickému modelu Power BI nemůžete zobrazit ani upravit míry modelu. Možnosti rychlých dotazů jsou omezené jenom na vyhodnocení.
Míry sestavy
Když je aktivní připojení k publikovanému sémantickému modelu Power BI, můžete vytvořit míry sestavy. Míry sestavy lze vytvořit pomocí akce Nová míra v zobrazení Sestava a Model , ale jak název napovídá, jsou k dispozici pouze v aktuální sestavě. Po vytvoření se v zobrazení dotazů DAX zobrazí možnost Definovat s odkazy a vyhodnotit je. Dotazy DAX se spouštějí v sémantickém modelu, takže míry sestavy musí být vždy převedeny na míry vymezené dotazem DAX v bloku DEFINE MEASURE ke spuštění, protože v samotném modelu neexistují.
Aktualizace modelu s tlačítkem změn a možnostmi CodeLens pro aktualizaci modelu nejsou k dispozici pro míry sestavy.
Zobrazení dotazu DAX na webu
Psaní dotazů DAX z publikovaných sémantických modelů používá zobrazení dotazů DAX na webu. Zobrazení dotazů DAX na webu je stejné prostředí v Power BI Desktopu s několika výjimkami.
- Uživatel může upravovat datové modely v nastavení pracovního prostoru Power BI služba Power BI (Preview), aby mohl psát dotazy DAX. Další informace najdete v článku o úpravách datových modelů v služba Power BI.
- Dotazy DAX se zahodí při zavření. Dotazy DAX v Power BI Desktopu se ukládají do modelu a sémantický model může obsahovat dotazy DAX, které jsou už v modelu uložené. Zobrazení dotazu DAX na webu aktuálně nezobrazí žádné dříve uložené dotazy DAX, které mohou existovat v sémantickém modelu, a dotazy vytvořené na webu se po zavření prohlížeče neuchovají.
- Psaní dotazů DAX vyžaduje oprávnění k zápisu v sémantickém modelu. Čtenáři pracovních prostorů musí k psaní dotazů DAX používat Power BI Desktop s živým připojením k sémantickému modelu.
Úvahy a omezení
Důležité informace, které je potřeba vzít v úvahu:
- 500+ čáry v editoru dotazů DAX mají při psaní znatelnou prodlevu.
- Rychlé akce žárovky pro míry se zobrazí jenom v případě, že na kartě dotazu není žádný příkaz DEFINE.
- Paleta příkazů zobrazuje některé příkazy, které ještě nefungují.
- Mřížka výsledků zatím nezobrazuje sloupce a míry se zadaným formátem, například Měna, Celé číslo s tisíci atd.
- Stáhněte si tento soubor z služba Power BI nebude obsahovat dotazy DAX uložené v publikovaném sémantickém modelu.
- Nastavení počáteční integrace Gitu z pracovního prostoru nebude obsahovat dotazy DAX uložené v publikovaném sémantickém modelu. Další informace najdete v integraci Gitu s Prostředky infrastruktury.
A mějte na paměti některá omezení:
- Maximálně 15 MB dat na dotaz. Po překročení 15 MB se aktuální řádek dokončí, ale žádné další řádky se nezapíšou.
- Maximálně 1 000 000 hodnot na dotaz. Pokud zadáte dotaz na 20 sloupců, můžete získat maximálně 50 000 řádků (1 milion děleno 20).
- Definujte všechny míry v této tabulce nebo modelu, pokud existuje více než 500 měr.
Spouštění dotazů DAX na webu má další omezení:
- Pro každý dotaz se vrátí maximálně 99 999 řádků.
- Oprávnění k zápisu do sémantického modelu Čtenáři s oprávněním k sestavení můžou pomocí Power BI Desktopu živě připojit a pomocí zobrazení dotazů DAX spouštět dotazy DAX.
- K dispozici pouze pro jiné než výchozí sémantické modely. Power BI Desktop můžete použít k živému připojení k výchozímu sémantickému modelu a ke spouštění dotazů DAX můžete použít zobrazení dotazů DAX.
- Uživatel může upravovat datové modely v nastavení pracovního prostoru Power BI služba Power BI (Preview), aby mohl psát dotazy DAX. Další informace o úpravách datových modelů v služba Power BI