Middle
Kaip dirbi su SQL? Kuo skiriasi INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN?
sobes.tech AI
Atsakymas iš AI
SQL JOIN — tai operacija, kuria sujungiami duomenys iš dviejų lentelių pagal susietą lauką. Skirtumai tarp JOIN tipų:
-
INNER JOIN — grąžina tik tas įrašus, kurie turi atitikmenis abiejose lentelėse.
-
LEFT JOIN (LEFT OUTER JOIN) — grąžina visus įrašus iš kairės lentelės ir atitinkančius iš dešinės; jei atitikmenų nėra, dešinėje bus NULL.
-
RIGHT JOIN (RIGHT OUTER JOIN) — atvirkščiai, grąžina visus įrašus iš dešinės lentelės ir atitinkančius iš kairės; jei atitikmenų nėra, kairėje bus NULL.
-
FULL OUTER JOIN — grąžina visus įrašus iš abiejų lentelių; jei atitikmenų nėra, atitinkamuose laukuose bus NULL.
Pavyzdys:
SELECT A.id, A.name, B.order_date
FROM Customers A
LEFT JOIN Orders B ON A.id = B.customer_id;
Šis užklausa grąžins visus klientus su jų užsakymais, jei jie yra, arba NULL order_date lauke, jei užsakymų nėra.