Junior — Middle
SQLda INNER JOIN va OUTER JOIN o'rtasidagi farqni tushuntiring va ularning har biri qaysi holatlarda ishlatilishini aytib bering.
sobes.tech AI
AIdan javob
INNER JOIN faqat ikkala jadvalda ham mos keladigan satrlarni qaytaradi, birlashish shartiga muvofiq.
OUTER JOIN bir jadvaldagi barcha satrlarni va boshqa jadvaldagi mos keladigan satrlarni qaytaradi. Agar mos kelish bo'lmasa, bo'sh joylar NULL bo'ladi.
OUTER JOIN turlari:
- LEFT OUTER JOIN — chap jadvaldagi barcha satrlar + o'ng jadvaldagi mos keladiganlar.
- RIGHT OUTER JOIN — o'ng jadvaldagi barcha satrlar + chap jadvaldagi mos keladiganlar.
- FULL OUTER JOIN — ikkala jadvaldagi barcha satrlar, mos kelmaslik holatida NULL bilan.
Foydalanish misoli:
- INNER JOIN — faqat bog'langan ma'lumotlar kerak bo'lsa, masalan, mavjud mijozlar bilan buyurtmalar.
- LEFT OUTER JOIN — barcha mijozlarni olish uchun, hatto buyurtmasi bo'lmaganlar ham.
SQL misoli:
SELECT customers.name, orders.id
FROM customers
LEFT JOIN orders ON customers.id = orders.customer_id;
Ushbu so'rov barcha mijozlar va ularning buyurtmalari, agar mavjud bo'lsa, yoki NULL bilan qaytaradi.