SQL SELECT z více tabulek

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