Junior
Kāda ir atšķirība starp LEFT JOIN un RIGHT JOIN?
sobes.tech AI
Atbilde no AI
LEFT JOIN izvēlas visas rindas no kreisās tabulas un atbilstošās rindas no labās. Ja labajā tabulā nav atbilstības, labās tabulas kolonnas būs NULL vērtība.
RIGHT JOIN izvēlas visas rindas no labās tabulas un atbilstošās rindas no kreisās. Ja kreisajā tabulā nav atbilstības, kreisās tabulas kolonnas būs NULL vērtība.
Faktiski, RIGHT JOIN ir LEFT JOIN spogulis. RIGHT JOIN rezultāts (tabula A JOIN tabula B) ir identisks ar rezultātu (tabula B JOIN tabula A), ar mainītām kolonnām.
SQL piemērs:
-- LEFT JOIN
SELECT *
FROM TabulaA
LEFT JOIN TabulaB ON TabulaA.id = TabulaB.id;
-- RIGHT JOIN
SELECT *
FROM TabulaA
RIGHT JOIN TabulaB ON TabulaA.id = TabulaB.id;
Vizuālizācija:
| JOIN tips | Kreisās tabulas iekļautās rindas | Labās tabulas iekļautās rindas |
|---|---|---|
| LEFT JOIN | Visas | Atbilstošas (vai NULL) |
| RIGHT JOIN | Atbilstošas (vai NULL) | Visas |