Vyzkoušejte to!
Někdy je potřeba vytvořit dotaz pro získání informací ze zdrojů dat, které nemají přímý vztah (1:1 nebo 1:N).
Připojení zdrojů dat v dotazech pomocí zprostředkujících tabulek
Když spustíte dotaz, Access použije relace, které jste vytvořili mezi tabulkami, a odvozuje a vytváří připojení mezi jinými zdroji dat. Pokud relace, kterou potřebujete pro dotaz, neexistuje, připojte tabulky jako součást tohoto dotazu.
Předpokládejme, že chcete zjistit, kolik objednávek jste obdrželi na produkty od různých dodavatelů. Tabulka Dodavatelé není propojená s tabulkou Podrobnosti o nákupní objednávce, která obsahuje ID produktů a informace o množství. Tabulka Nákupní objednávky je však připojená k tabulce Podrobnosti nákupních objednávek.
Tip: Pokud tuto relaci možná budete potřebovat mimo dotaz, který vytváříte, je nejlepší vytvořit zprostředkující relaci pro pozdější použití. Postup najdete v tématu Create relací M:N.
Pokud nechcete vytvořit zprostředkující tabulku v databázi, použijte v dotazu tabulku Nákupní objednávky jako zprostředkující tabulku. Nalevo od tabulky Nákupní objednávky přidejte tabulku Dodavatelé a vytvořte připojení.
Tabulka Nákupní objednávky propojuje dvě různorodé tabulky, Dodavatelé a Podrobnosti nákupní objednávky. Připojte tabulky pomocí polí (například ID v tabulce Dodavatel a ID dodavatele v tabulce Nákupní objednávky), která splňují následující kritéria:
-
Tato dvě pole mají odpovídající nebo kompatibilní datové typy. Nemůžete například připojit textové pole k číselnému poli.
-
Pole identifikují odpovídající jedinečné záznamy v každé tabulce. Nechcete například propojit dvě pole Příjmení, protože příjmení nejsou vždy jedinečná.
-
Pole zajistí, aby výsledek správných záznamů. Pokud například propojíte ID dodavatele s ID nákupu, můžete získat pár shod, pokud jsou ID podobná. Výsledky ale nebudou dávat smysl, protože ID dodavatele nemá s ID nákupu nic společného. Lepší volbou je připojit ID z tabulky Dodavatel k ID dodavatele v tabulce Nákupní objednávky – vrácené záznamy budou dávat smysl, protože obě pole identifikují dodavatele.
Kroky
Bez ohledu na to, jestli máte v databázi zprostředkující tabulku, nebo jen plánujete ji použít v dotazu, postupujte takto:
-
Přidejte do dotazu zprostředkující tabulku mezi dvě nepřipojené tabulky.
-
Create všechna potřebná připojení k zprostředkující tabulce.
Connections může použít libovolný vhodný typ spojení, ale musí být propojený prostřednictvím polí, která splňují kritéria popsaná výše v tomto modulu.
-
Dokončete dotaz.
Při vytváření dotazu postupujte podle obvyklých kroků: přidejte výstupní pole, přidejte všechna kritéria a spusťte nebo uložte dotaz. Postup najdete v tématu Create základních dotazů.
Poznámka: Do výsledků nemusíte zahrnovat zprostředkující tabulku. Jenom musí být součástí zdrojů dat dotazu, aby access mohl data připojit.
Chcete se dozvědět víc?
Create dotazy připojením k více než jednomu zdroji dat