Skombinovanie viacerých tabuliek do jednej tabuľky

Dokončené

Možnosť skombinovať dotazy predstavuje výkonný nástroj, pretože umožňuje spojiť alebo zlúčiť rôzne tabuľky alebo dotazy. Tabuľky môžete skombinovať do jednej tabuľky za týchto okolností:

  • Existuje príliš veľa tabuliek, čo komplikuje navigáciu v zložitom sémantickom modeli.

  • niektoré tabuľky majú podobnú rolu;

  • tabuľka obsahuje len jeden alebo dva stĺpce, ktoré možno pridať do inej tabuľky;

  • chcete použiť viacero stĺpcov z rôznych tabuliek a vytvoriť z nich vlastný stĺpec.

Tabuľky môžete kombinovať dvoma spôsobmi: zlučovaním a pripájaním.

Predpokladajme, že vyvíjate zostavy Power BI pre tímy predaja a ľudských zdrojov. Požiadali vás, aby ste vytvorili zostavu s kontaktnými údajmi, ktorá bude obsahovať kontaktné informácie a umiestnenie každého zamestnanca, dodávateľa a zákazníka.  Údaje sú v tabuľkách HR.Employees (LZ.Zamestnanci), Production.Suppliers (Výroba.Dodávatelia) a Sales.Customers (Predaj.Zákazníci), ako je znázornené na nasledujúcom obrázku.

Tieto údaje však pochádzajú z rôznych tabuliek. Otázkou teda je zistiť, ako by sa údaje z týchto viacerých tabuliek dali zlúčiť, aby bolo možné vytvoriť jeden dôveryhodný zdroj, z ktorého sa následne vytvorí zostava. Funkcie služby Power BI umožňujú skombinovať a zlúčiť dotazy do jednej tabuľky.

Pripojenie dotazov

Pri pripájaní dotazov pridávate riadky údajov do inej tabuľky alebo dotazu. Môžete mať napríklad dve tabuľky, jednu s 300 riadkami a druhú so 100 riadkami. Po pripojení dotazov bude 400 riadkov. Pri zlučovaní dotazov pridávate stĺpce z jednej tabuľky (alebo dotazu) do druhej.  Ak chcete zlúčiť dve tabuľky, musíte mať stĺpec, ktorý predstavuje kľúč medzi týmito dvoma tabuľkami.

V prípade vyššie spomenutého scenára pripojíte ĽZ. Tabuľka Zamestnanci s tabuľkami Production.Suppliers (Výroba.Dodávatelia) a Sales.Customers (Predaj.Zákazníci) tak, že máte jeden hlavný zoznam kontaktných informácií.  Keďže chcete vytvoriť jednu tabuľku, ktorá obsahuje všetky kontaktné informácie zamestnancov, dodávateľov aj zákazníkov, musia mať relevantné stĺpce, ktoré chcete mať vo výslednej skombinovanej tabuľke, rovnaký názov ako v pôvodných tabuľkách s údajmi, aby bolo možné vidieť jedno konsolidované zobrazenie.

Skôr než začnete kombinovať dotazy, môžete odstrániť nadbytočné stĺpce, ktoré v tabuľkách v rámci tejto úlohy nepotrebujete. Na dokončenie tejto úlohy naformátujte každú tabuľku tak, aby mala len štyri stĺpce s relevantnými informáciami, a premenujte ich, aby mali všetky rovnaké hlavičky stĺpcov: ID, company (spoločnosť), name (meno) a phone (telefón).  Na nasledujúcich obrázkoch sú výstrižky tabuliek Sales.Customers (Predaj.Zákazníci), Production.Suppliers (Výroba.Dodávatelia) a HR.Employees (LZ.Zamestnanci) s upraveným formátovaním.

Po dokončení zmeny formátovania môžete skombinovať dotazy. Na karte Domov na páse s nástrojmi Editor Power Query vyberte rozbaľovací zoznam pre položku Pripojiť dotazy. Môžete vybrať položku Pripojiť dotazy ako nové, čo znamená, že výstupom pripájania bude nový dotaz alebo tabuľka, alebo môžete vybrať položku Pripojiť dotazy, čím sa riadky z existujúcej tabuľky pridajú do druhej.

Vašou ďalšou úlohou je vytvoriť novú hlavnú tabuľku, preto musíte vybrať položku Pripojiť dotazy ako nové. Po výbere tejto položky sa zobrazí okno, v ktorom môžete pridať tabuľky, ktoré chcete pripojiť, z dostupných tabuliek do tabuliek na položku Pripojiť, ako je to znázornené na nasledujúcom obrázku.

Po pridaní tabuliek, ktoré chcete pripojiť, vyberte tlačidlo OK. Budete presmerovaní na nový dotaz, ktorý obsahuje všetky riadky zo všetkých troch tabuliek, ako je to znázornené na nasledujúcom obrázku.

Úspešne ste vytvorili hlavnú tabuľku, ktorá obsahuje informácie o zamestnancoch, dodávateľoch aj zákazníkoch. Môžete zavrieť Editor Power Query a začať vytvárať prvky zostavy založené na tejto hlavnej tabuľke.

Ak by ste však chceli tabuľky zlúčiť, nie len pripojiť údaje z jednej tabuľky do druhej, proces by bol odlišný.

Zlúčenie dotazov

Pri zlučovaní dotazov kombinujete údaje z viacerých tabuliek do jednej na základe stĺpca, ktorý majú tabuľky spoločný.  Tento proces je podobný klauzule JOIN v jazyku SQL.  Zoberme si scenár, v ktorom od vás tím predaja chce, aby ste zlúčili objednávky a príslušné podrobnosti v nich (ktoré sú aktuálne v dvoch tabuľkách) do jednej tabuľky. Túto úlohu môžete splniť zlúčením dvoch tabuliek, Orders (Objednávky) a OrderDetails (PodrobnostiObjednávky), ako je znázornené na nasledujúcom obrázku. Stĺpec, ktorý majú tieto dve tabuľky spoločný, je OrderID.

Na páse s nástrojmi Editor Power Query prejdite na položku Domov a vyberte rozbaľovaciu ponuku Zlúčiť dotazy, kde môžete vybrať možnosť Zlúčiť dotazy ako nové. Po výbere tejto položky sa otvorí nové okno, v ktorom môžete z rozbaľovacieho zoznamu vybrať tabuľky, ktoré chcete zlúčiť, a potom vybrať stĺpec, ktorý majú tabuľky zhodný, čo je v tomto prípade orderid.

Môžete tiež vybrať druh spoja tabuliek, proces, ktorý je tiež podobný ako v príkazoch JOIN v jazyku SQL.  Dostupné možnosti spoja:

  • Ľavý vonkajší – zobrazí všetky riadky z prvej tabuľky a len zhodujúce sa riadky z druhej tabuľky.

  • Úplný vonkajší – zobrazí všetky riadky z oboch tabuliek.

  • Vnútorný – zobrazí iba zhodujúce sa riadky z oboch tabuliek.

V tomto scenári sa rozhodnete použiť ľavý vonkajší spoj. Vyberte tlačidlo OK, čím prejdete do nového okna, kde si môžete pozrieť zlúčený dotaz.

Teraz viete rôznymi spôsobmi zlúčiť dva dotazy alebo dve tabuľky, aby ste si mohli údaje zobraziť spôsobom, ktorý je pre potreby vášho podniku najvhodnejší.

Ďalšie informácie o tejto téme nájdete v dokumentácii Tvarovanie a kombinovanie údajov v službe Power BI .