SQL SELECT iš kelių lentelių
Šis teiginys naudojamas laukams iš kelių lentelių gauti. Norėdami tai padaryti, turime naudoti prisijungimo užklausą, kad gautume duomenis iš kelių lentelių.
Pažiūrėkime, kaip pasirinkti iš kelių lentelių:
SELECT orders.order_id, suppliers.name FROM suppliers INNER JOIN orders ON suppliers.supplier_id = orders.supplier_id ORDER BY order_id;
Paimkime tris lenteles, dvi klientų lenteles, pavadintas klientas1 ir klientas2, o trečioji lentelė yra produktų lentelė.
Klientas1 lentelė
| Cus_id | Vardas1 |
|---|---|
| 1 | Domkratas |
| 2 | Jill |
Klientas2 stalas
| Cus_id | Vardas 2 |
|---|---|
| 1 | Sandy |
| 2 | Venera |
Produktų lentelė
| P_id | Cus_id | P_vardas |
|---|---|---|
| 1 | 1 | Nešiojamas kompiuteris |
| 2 | 2 | Telefonas |
| 3 | P1 | Rašiklis |
| 4 | P2 | Užrašų knygelė |
Sintaksės pavyzdys, skirtas pasirinkti iš kelių lentelių:
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_vardas | P_vardas | P_vardas |
|---|---|---|---|---|
| 1 | 1 | Nešiojamas kompiuteris | Domkratas | NULL |
| 2 | 2 | Telefonas | Jill | NULL |
| 3 | P1 | Rašiklis | NULL | Sandy |
| 4 | P2 | Užrašų knygelė | NULL | Venera |