Sobes.tech
Junior

Kokie JOIN tipai egzistuoja SQL?

sobes.tech AI

Atsakymas iš AI

SQL yra šie pagrindiniai jungimo (JOIN) tipai:

  • INNER JOIN (arba paprastai JOIN): Grąžina tik tas eilutes, kuriose abiejose lentelėse yra atitikimai pagal nurodytą sąlygą.

  • LEFT JOIN (arba LEFT OUTER JOIN): Grąžina visas kairės lentelės eilutes ir atitinkančias dešinės lentelės eilutes. Jei atitikimų nėra, laukeliai bus NULL.

  • RIGHT JOIN (arba RIGHT OUTER JOIN): Grąžina visas dešinės lentelės eilutes ir atitinkančias kairės lentelės eilutes. Jei atitikimų nėra, laukeliai bus NULL.

  • FULL JOIN (arba FULL OUTER JOIN): Grąžina visas eilutes, jei yra atitikimas kairėje arba dešinėje lentelėje. Jei atitikimų nėra, laukeliai bus NULL.

Papildomi jungimo tipai (priklauso nuo konkrečios duomenų bazės valdymo sistemos):

  • CROSS JOIN: Grąžina dviejų lentelių kartesianį produktą. Kiekviena pirmos lentelės eilutė sujungiama su kiekviena antros lentelės eilute.

Sintaksės pavyzdys:

-- INNER JOIN
SELECT *
FROM Lentelė1
INNER JOIN Lentelė2 ON Lentelė1.bendra_stulpelis = Lentelė2.bendra_stulpelis;

-- LEFT JOIN
SELECT *
FROM Lentelė1
LEFT JOIN Lentelė2 ON Lentelė1.bendra_stulpelis = Lentelė2.bendra_stulpelis;

-- RIGHT JOIN
SELECT *
FROM Lentelė1
RIGHT JOIN Lentelė2 ON Lentelė1.bendra_stulpelis = Lentelė2.bendra_stulpelis;

-- FULL JOIN
SELECT *
FROM Lentelė1
FULL JOIN Lentelė2 ON Lentelė1.bendra_stulpelis = Lentelė2.bendra_stulpelis;

-- CROSS JOIN
SELECT *
FROM Lentelė1
CROSS JOIN Lentelė2;