Jak Návrhář dotazů a zobrazení představuje spojení (Visual Database Tools)
platí pro:SQL Server
Pokud jsou tabulky spojeny, Návrhář dotazů a zobrazení zobrazuje spojení graficky v podokně Diagram a pomocí SQL syntaxe v podokně SQL .
Podokno diagramu
V podokně Diagram zobrazí Návrhář dotazu a zobrazení spojnici mezi sloupci dat, které jsou součástí spojení. Návrhář dotazu a zobrazení zobrazí jeden spojnicový řádek pro každou podmínku spojení. Například následující obrázek znázorňuje spojnici mezi dvěma tabulkami, které jsou spojené:
Pokud jsou tabulky spojené pomocí více než jedné podmínky spojení, Návrhář dotazu a zobrazení zobrazí více spojnic, jako v následujícím příkladu:
Pokud nejsou zobrazené spojené datové sloupce (například obdélník představující tabulku nebo objekt strukturovaný tabulkou je minimalizován nebo spojení zahrnuje výraz), umístí Návrhář dotazu a zobrazení spojnici na záhlaví obdélníku představující tabulku nebo objekt strukturovaný tabulkou.
Tvar ikony uprostřed spojnice označuje, jak jsou tabulky nebo objekty strukturované tabulky spojené. Pokud klauzule join používá jiný operátor než equal (=), zobrazí se operátor v ikoně spojnice. Následující tabulka uvádí ikony, které se zobrazují na čáře spojení.
Ikona spojení čáry | popis |
---|---|
![]() |
Vnitřní spojení (vytvořené pomocí znaménka rovná se) |
![]() |
Vnitřní spojení založené na operátoru "větší než". |
![]() |
Vnější spojení, ve kterém budou zahrnuty všechny řádky z tabulky reprezentované vlevo, i když v související tabulce nemají odpovídající položky. |
![]() |
Vnější spojení, ve kterém budou zahrnuty všechny řádky z tabulky reprezentované vpravo, i když v související tabulce nemají odpovídající položky. |
![]() |
Úplné vnější spojení, ve kterém budou zahrnuty všechny řádky z obou tabulek, i když v související tabulce nemají shody. |
Symboly na koncích spojnice označují typ spojení. Následující tabulka uvádí typy spojení a ikony zobrazené na koncích spojnice.
ikona na koncích spojovací čáry | Typ spojení |
---|---|
![]() |
Spojení jedna ku jedné |
![]() |
Spojení 1 na N. |
![]() |
Návrhář dotazů a zobrazení nemůže určit typ spojení. K této situaci nejčastěji dochází, když jste připojení vytvořili ručně. |
Podokno SQL
Spojení lze vyjádřit mnoha způsoby v příkazu SQL. Přesná syntaxe závisí na databázi, kterou používáte, a na tom, jak jste definovali spojení.
Mezi možnosti syntaxe pro spojování tabulek patří:
JOIN kvalifikátor pro klauzuli FROM. Klíčová slova INNER a OUTER určují typ spojení. Tato syntaxe je standardní pro ANSI 92 SQL.
Pokud například spojíte tabulky
publishers
apub_info
na základě sloupcepub_id
v každé tabulce, výsledný příkaz SQL může vypadat takto:SELECT * FROM publishers INNER JOIN pub_info ON publishers.pub_id = pub_info.pub_id
Pokud vytvoříte vnější spojení, místo slova INNER se zobrazí slova LEFT OUTER nebo RIGHT OUTER.
klauzule WHERE porovnává sloupce v obou tabulkách. Klauzule WHERE se zobrazí, pokud databáze nepodporuje syntaxi JOIN (nebo pokud jste ji zadali sami). Pokud je spojení vytvořeno v klauzuli WHERE, oba názvy tabulek se zobrazí v klauzuli FROM.
Následující příkaz například spojí tabulky
publishers
apub_info
.SELECT * FROM publishers, pub_info WHERE publishers.pub_id = pub_info.pub_id