Úplné vnější spojení
Jedním z typů spojení dostupných v dialogovém okně Sloučení v Power Query je úplné vnější spojení, které přináší všechny řádky z levé i pravé tabulky. Další informace: Přehled operací sloučení
Snímek obrazovky znázorňující levou tabulku se sloupci Date, CountryID a Units Zvýrazněný sloupec CountryID obsahuje hodnoty 1 v řádcích 1 a 2, 3 v řádku 3 a 2 v řádku 4. Pravá tabulka obsahuje sloupce ID a Země. Zvýrazněný sloupec ID obsahuje hodnoty 1 v řádku 1 (označující USA), 2 v řádku 2 (označující Kanadu), 3 v řádku 3 (denoting Panama) a 4 (denoting Spain) v řádku 4. Tabulka pod prvními dvěma tabulkami obsahuje sloupce Datum, CountryID, Units a Country. Všechny řádky se přeuspořádají v číselném pořadí podle hodnoty CountryID. Země přidružená k číslu CountryID se zobrazuje ve sloupci Země. Vzhledem k tomu, že ID země pro Španělsko nebylo obsaženo v levé tabulce, přidá se nový řádek a hodnota data, ID země a jednotek pro tento řádek se nastaví na hodnotu null.
Tento článek používá ukázková data k zobrazení, jak provést operaci sloučení s úplným vnějším spojením. Ukázkové zdrojové tabulky pro tento příklad jsou:
Sales: Tato tabulka obsahuje pole Datum, CountryID a Units. CountryID je celá číselná hodnota, která představuje jedinečný identifikátor z tabulky Countries .
Země: Tato tabulka je referenční tabulka s ID polí a zemí. Pole ID představuje jedinečný identifikátor každého záznamu.
V tomto příkladu sloučíte obě tabulky s tabulkou Sales jako levou a tabulkou Countries (Země ) jako pravou. Spojení se vytvoří mezi následujícími sloupci.
Pole z tabulky Sales | Pole z tabulky Země |
---|---|
CountryID | ID |
Cílem je vytvořit tabulku jako v následujícím příkladu, kde se název země zobrazí jako nový sloupec Země v tabulce Prodej . Vzhledem k tomu, jak funguje úplné vnější spojení, se všechny řádky z levé i pravé tabulky přenesou bez ohledu na to, jestli se zobrazují jenom v jedné z tabulek.
Snímek obrazovky poslední úplné vnější tabulky spojení s datem, CountryID a Units odvozenými z tabulky Sales (Prodej) a sloupce Country odvozeným z tabulky Countries (Země). Do pátého řádku byla přidána data ze Španělska, ale tento řádek obsahuje ve sloupcích Date, CountryID a Units hodnotu null, protože tyto hodnoty v tabulce Sales (Prodej) neexistují pro Španělsko.
Provedení úplného vnějšího spojení:
- Vyberte dotaz Sales (Prodej) a pak vyberte Merge queries (Sloučit dotazy).
- V dialogovém okně Sloučit v části Pravá tabulka pro sloučení vyberte Země.
- V tabulce Sales (Prodej) vyberte sloupec CountryID (CountryID).
- V tabulce Země vyberte sloupec ID.
- V části Druh spojení vyberte Úplné vnější.
- Vyberte OK.
Poznámka:
Sloučit můžete s více než jedním sloupcem tak, že vyberete a podržíte klávesu Ctrl a pak vyberete sloupce.
Tip
Podívejte se blíže na zprávu v dolní části dialogového okna, která obsahuje text "Výběr odpovídá 4 z 5 řádků z obou tabulek". Tato zpráva je zásadní pro pochopení výsledku, který z této operace získáte.
V tabulce Countries (Země) máte Zemi Španělsko s ID 4, ale v tabulce Sales (Prodej) nejsou žádné záznamy pro CountryID 4. Proto byly nalezeny shody pouze tři ze čtyř řádků z pravé tabulky. Všechny řádky z pravé tabulky, které nemají odpovídající řádky z levé tabulky, se seskupí a zobrazí se v novém řádku ve výstupní tabulce bez hodnot polí z levé tabulky.
Z nově vytvořeného sloupce Země po operaci sloučení rozbalte pole Země . Nezaškrtávejte políčko Použít původní název sloupce jako předponu .
Po provedení této operace vytvoříte tabulku, která vypadá jako na následujícím obrázku.
Snímek obrazovky s kompletní konečnou tabulkou vnějšího spojení, která obsahuje date, CountryID a Units odvozené z tabulky Sales (Prodej) a sloupec Country odvozený z tabulky Countries (Země). Do pátého řádku byla přidána data ze Španělska, ale tento řádek obsahuje ve sloupcích Date, CountryID a Units hodnotu null, protože tyto hodnoty v tabulce Sales (Prodej) neexistují pro Španělsko.