Sobes.tech
Junior

SQLda chap tomonli birlashtirish (left join) nima?

sobes.tech AI

AIdan javob

SQLda chap qoshish (LEFT JOIN yoki LEFT OUTER JOIN) ikki jadvaldan satrlarni birlashtirish uchun ishlatiladi.

LEFT JOIN natijasi quyidagilarni o'z ichiga oladi:

  • Chap (birinchi) jadvaldan barcha satrlar.
  • Mos keladigan satrlar ikkinchi (o'ng) jadvaldan, birlashtirish sharti bajarilgan joyda.
  • Chap jadvaldagi, o'ng jadvlda mos kelmaydigan satrlar uchun, o'ng jadvaldan ustunlar NULL qiymatini oladi.

Sintaksis misoli:

SELECT <ustunlar_ro'yxati>
FROM <chap_jadval> AS L
LEFT JOIN <o'ng_jadval> AS R ON L.<birlashtirish_ustuni> = R.<birlashtirish_ustuni>;

Ishlash tartibi:

Har bir chap jadval satri tekshiriladi. Har bir satr uchun, ON shartiga muvofiq mos kelishlar qidiriladi.

  • Agar mos kelishlar topilsa, chap jadval satri o'ng jadvaldagi barcha mos satrlar bilan birlashtiriladi.
  • Agar mos kelishlar topilmasa, chap jadval satri natijaga qo'shiladi va o'ng jadval ustunlari NULL bilan to'ldiriladi.

Vizual tasvir:

Ikki ma'lumotlar to'plamini tasavvur qiling: Left (chap jadval) va Right (o'ng jadval). LEFT JOIN, Leftdan barcha elementlarni va Rightdan mos keladigan elementlarni qaytaradi. Agar Leftda, Rightda mos kelmaydigan elementlar bo'lsa, ular ham natijada ko'rsatiladi, lekin Rightdan kelgan ustunlar bo'sh (NULL) bo'ladi.

Boshqa JOIN turlari bilan taqqoslash:

JOIN turi Tavsifi
INNER JOIN Faqat ikkala jadvalda mos keladigan satrlarni qaytaradi.
LEFT JOIN Chap jadvaldan barcha satrlar va mos keladigan o'ng satrlar. NULL mos kelmaydiganlar uchun.
RIGHT JOIN O'ng jadvaldan barcha satrlar va mos keladigan chap satrlar. NULL mos kelmaydiganlar uchun.
FULL OUTER JOIN Ikkala jadvalda ham mos keladigan yoki kelmaydigan satrlarni qaytaradi. NULL mos kelmaydiganlar uchun.

Shunday qilib, LEFT JOIN, bir jadvaldan to'liq yozuvlar ro'yxatini olish va ularni boshqa jadvaldan ma'lumotlar bilan to'ldirish uchun foydalidir, hatto barcha yozuvlar uchun mos keladigan ma'lumotlar bo'lmasa ham.