Junior — Middle
Ar galite paaiškinti skirtingų tipų jungčių SQL lentelėse skirtumus?
sobes.tech AI
Atsakymas iš AI
SQL yra keli pagrindiniai jungčių (JOIN) tipai, leidžiantys sujungti duomenis iš dviejų ar daugiau lentelių:
- INNER JOIN — grąžina tik tas eilutes, kuriose yra atitikimas abiejose lentelėse pagal sąlygą.
- LEFT JOIN (LEFT OUTER JOIN) — grąžina visas kairės lentelės eilutes ir atitinkančias dešinės lentelės eilutes; jei atitikimo nėra, dešinės lentelės reikšmės bus NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — grąžina visas dešinės lentelės eilutes ir atitinkančias kairės lentelės eilutes.
- FULL JOIN (FULL OUTER JOIN) — grąžina visas abiejų lentelių eilutes, užpildydamas NULL ten, kur nėra atitikimo.
- CROSS JOIN — dviejų lentelių kartesijinis sandaugos, grąžina visas galimas eilutų kombinacijas.
INNER JOIN pavyzdys:
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
Šis užklausa grąžins darbuotojų vardus ir jų padalinių pavadinimus tik tiems darbuotojams, kurie turi padalinį.