Tento příkaz se používá k načtení polí z více tabulek. K tomu musíme použít spojovací dotaz k získání dat z více tabulek.
Podívejme se na příklad výběru z více tabulek:
SELECT orders.order_id, suppliers.name FROM suppliers INNER JOIN orders ON suppliers.supplier_id = orders.supplier_id ORDER BY order_id;
Vezměme si tři tabulky, dvě tabulky zákazníků pojmenované zákazník1 a zákazník2 a třetí tabulka je tabulka produktů.
Tabulka Zákazník1
Cus_id | Jméno1 |
---|---|
1 | Zvedák |
2 | Jill |
Tabulka Zákazník2
Cus_id | Jméno2 |
---|---|
1 | Sandy |
2 | Venuše |
Tabulka produktů
P_id | Cus_id | P_jméno |
---|---|---|
1 | 1 | Přenosný počítač |
2 | 2 | Telefon |
3 | P1 | Pero |
4 | P2 | Notebook |
Příklad syntaxe pro výběr z více tabulek:
SELECT p. p_id, p.cus_id, p.p_name, c1.name1, c2.name2 FROM product AS p LEFT JOIN customer1 AS c1 ON p.cus_id=c1.cus_id LEFT JOIN customer2 AS c2 ON p.cus_id = c2.cus_id
P_id | Cus_id | P_jméno | P_jméno | P_jméno |
---|---|---|---|---|
1 | 1 | Přenosný počítač | Zvedák | NULA |
2 | 2 | Telefon | Jill | NULA |
3 | P1 | Pero | NULA | Sandy |
4 | P2 | Notebook | NULA | Venuše |