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 |