Junior — Middle
SQLде ички бирешүү менен сол жакты бирешүүнүн айырмасын түшүндүрө аласызбы?
sobes.tech AI
AIден жооп
Ички бирлашуу (INNER JOIN), бириктирүү шартына ылайык эки таблицада да туура келген саптарды гана кайтарат. Эгер бир таблицада тиешелүү жазуу жок болсо, мындай сап натыйга кирбейт.
Сол жактан бирлашуу (LEFT JOIN), сол жактагы бардык саптарды жана оң жактагы тиешелүү саптарды кайтарат. Эгер туура келүү болбосо, оң жактын маанилери NULL болот.
Мисал:
SELECT a.id, a.name, b.order_id
FROM customers a
INNER JOIN orders b ON a.id = b.customer_id;
Тек заказдары бар кардарларды кайтарат.
SELECT a.id, a.name, b.order_id
FROM customers a
LEFT JOIN orders b ON a.id = b.customer_id;
Бардык кардарларды, анын ичинде заказдары жокторду да, кайтарат (бул учурда order_id NULL болот).