SQL SELECT aus mehreren Tabellen

Diese Anweisung wird verwendet, um Felder aus mehreren Tabellen abzurufen. Dazu müssen wir eine Join-Abfrage verwenden, um Daten aus mehreren Tabellen abzurufen.

Sehen wir uns das Beispiel für die Auswahl aus mehreren Tabellen an:

 SELECT orders.order_id, suppliers.name FROM suppliers INNER JOIN orders ON suppliers.supplier_id = orders.supplier_id ORDER BY order_id;  

Nehmen wir drei Tabellen, zwei Kundentabellen mit den Namen „Kunde1“ und „Kunde2“ und die dritte Tabelle ist die Produkttabelle.

Tabelle „Kunde1“.

Cus_id Name1
1 Jack
2 Jill

Tabelle „Kunde2“.

Cus_id Name2
1 Sandig
2 Venus

Produkttabelle

P_id Cus_id P_name
1 1 Laptop
2 2 Telefon
3 P1 Stift
4 P2 Notizbuch

Beispielsyntax zur Auswahl aus mehreren Tabellen:

 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_name P_name P_name
1 1 Laptop Jack NULL
2 2 Telefon Jill NULL
3 P1 Stift NULL Sandig
4 P2 Notizbuch NULL Venus