Junior
Care este diferența dintre LEFT JOIN și RIGHT JOIN?
sobes.tech AI
Răspuns de la AI
LEFT JOIN selectează toate rândurile din tabelul din stânga și rândurile corespunzătoare din dreapta. Dacă nu există corespondență în tabelul din dreapta, coloanele tabelului din dreapta vor avea valori NULL.
RIGHT JOIN selectează toate rândurile din tabelul din dreapta și rândurile corespunzătoare din stânga. Dacă nu există corespondență în tabelul din stânga, coloanele tabelului din stânga vor avea valori NULL.
De fapt, RIGHT JOIN este o reflecție în oglindă a LEFT JOIN. Rezultatul RIGHT JOIN (tabelul A JOIN tabelul B) este identic cu rezultatul LEFT JOIN (tabelul B JOIN tabelul A), cu coloanele schimbate.
Exemplu SQL:
-- LEFT JOIN
SELECT *
FROM TabelA
LEFT JOIN TabelB ON TabelA.id = TabelB.id;
-- RIGHT JOIN
SELECT *
FROM TabelA
RIGHT JOIN TabelB ON TabelA.id = TabelB.id;
Vizualizare:
| Tip JOIN | Rânduri incluse din tabelul din stânga | Rânduri incluse din tabelul din dreapta |
|---|---|---|
| LEFT JOIN | Toate | Corespondente (sau NULL) |
| RIGHT JOIN | Corespondente (sau NULL) | Toate |