Samizdatová skripta

Spojování tabulek


Spojení je označení pro slučování záznamů z několika tabulek.

syntaxe podle ANSI-92

JOIN

CROSS JOIN

Kartézský součin, spojení všech zaznamů z jedné tabulky se všemi záznami z druhé tabulky.

např.

tabulka10 záznamů3 sloupců
tabulka5 záznamů4 sloupce
tabulka7 záznamů6 sloupců

výsledná tabulka 10*5*7 = 350 záznamů a každý 3 + 4 + 6 = 13 sloupců

INNER JOIN

sloučí záznamy ze dvou tabulek vždy, když se hodnoty ve společném poli shodují

LEFT JOIN

slouží k vytvoření levého vnějšího spojení – obsahuje všechny záznamy z první ze dvou tabulek, i když ve druhé tabulce neodpovídají záznamům žádné hodnoty (ve výsledné tabulce bude u příslušných sloupců hodnota NULL)

SELECT seznam polí FROM tabulka1 JOIN spojovaná tabulka2 ON tabulka1 relační operátor tabulka 2 WHERE kritéria

starší syntaxe:

Slučte sloupce jméno a příjmení čtenáře, název a autor knihy z tabulek KNIHY, CTENARI a VYPUJCKY

SELECT  ctenari.celejmeno ,  knihy.nazev ,  knihy.autor FROM ctenari, knihy, vypujcky 
WHERE ( ( ctenari.cisloleg = vypujcky.legitimace) AND (knihy.sign = vypujcky.signatura) )

http://interval.cz/clanky/sql-spojovani-tabulek-a-tvorba-pohledu/

upravit odstranit css

NAVRCHOLU.cz