Jak získám data z více tabulek?
SQL JOIN kombinuje záznamy ze dvou tabulek.
JOIN vyhledá související hodnoty sloupců ve dvou tabulkách.
Dotaz může obsahovat nulu, jednu nebo více operací JOIN.
VNITŘNÍ PŘIPOJENÍ je stejné jako PŘIPOJENÍ; klíčové slovo VNITŘNÍ je volitelné.
Čtyři různé typy PŘIPOJENÍ
- (VNITŘNÍ) PŘIPOJENÍ: Vyberte záznamy které mají shodné hodnoty v obou tabulkách.
- FULL (OUTER) JOIN: Vybere všechny záznamy, které odpovídají levému nebo pravému záznamu tabulky.
- LEFT (OUTER) JOIN: Vyberte záznamy z první (nejvíce vlevo) tabulka s odpovídajícími pravými záznamy tabulky.
- PRAVÉ (VNĚJŠÍ) PŘIPOJENÍ: Vyberte záznamy z druhé (pravé) tabulky se shodnými záznamy levé tabulky.
Poznámka: Všechna klíčová slova VNITŘNÍ a VNĚJŠÍ jsou volitelná.
Podrobnosti o různých PŘIPOJENÍCH jsou k dispozici na následujících stránkách výuky.
SQL PŘIPOJTE se k syntaxi
Obecná syntaxe je
SELECT column-names FROM table-name1 JOIN table-name2 ON column-name1 = column-name2 WHERE condition
Obecná syntaxe s INNER je:
SELECT column-names FROM table-name1 INNER JOIN table-name2 ON column-name1 = column-name2 WHERE condition
Poznámka: Klíčové slovo INNER je volitelné: je to výchozí i nejčastěji používaná operace JOIN.
Id
První tName
Příjmení
Město
Země
Telefon
ID
Datum objednávky
Číslo objednávky
CustomerId
TotalAmount
Příklady SQL JOIN
V tomto příkladu by mohlo být užitečné použít Aliasy tabulky pro a Zákazník.
Číslo objednávky | Celková částka | Jméno | Příjmení | Město | Země |
---|---|---|---|---|---|
542378 | 440,00 | Paul | Henriot | Remeš | Francie |
542379 | 1863,40 | Karin | Josephs | Münster | Německo |
542380 | 1813,00 | Mario | Pontes | Rio de Janeiro | Brazílie |
542381 | 670,80 | Mary | Saveley | Lyon | Francie |
542382 | 3730,00 | Pascale | Cartrain | Charleroi | Belgie |
542383 | 1444,80 | Mario | Pontes | Rio de Janeiro | Brazílie |
542384 | 625,20 | jang | wang | Bern | Švýcarsko |
ID
Název produktu
SupplierId
UnitPrice
Balíček
IsDiscontinued
Id
OrderId
ProductId
UnitPrice
Množství
ID
Datum objednávky
Číslo objednávky
CustomerId
TotalAmount
s názvy produktů,
množství a ceny
O, I a P jsou aliasy tabulek . Datum je alias sloupce.