Sobes.tech
Junior — Middle
122

SQL'da INNER JOIN va LEFT JOIN operatsiyalari o'rtasidagi farqlarni va ularning so'rovlaridagi qo'llanilishini tushuntiring.

Qaerda so'ralgan kompaniyalar
ИнфоТехСервис
ООО УайтСнейк

AIdan javob

sobes.tech AI

INNER JOIN возвращает только те строки, у которых есть совпадения в обеих таблицах по условию соединения. Если совпадений нет, строка не попадет в результат.

LEFT JOIN (или LEFT OUTER JOIN) возвращает все строки из левой таблицы и соответствующие строки из правой таблицы. Если совпадений нет, в столбцах правой таблицы будут NULL.

Пример:

SELECT users.id, orders.id
FROM users
INNER JOIN orders ON users.id = orders.user_id;

Вернет только пользователей с заказами.

SELECT users.id, orders.id
FROM users
LEFT JOIN orders ON users.id = orders.user_id;

Вернет всех пользователей, включая тех, у кого нет заказов (в этом случае orders.id будет NULL).

Применение:

  • INNER JOIN — когда нужны только связанные данные.
  • LEFT JOIN — когда нужно сохранить все данные из левой таблицы и добавить связанные, если они есть.