Какие знаешь виды JOIN

Python Senior Без компании
Какие знаешь виды JOIN
Ответы
JOIN используется для объединения двух и более таблиц **Виды JOIN:** **1. INNER JOIN** (Внутреннее соединение) **Что делает:** Возвращает только те записи, где есть совпадение в ОБЕИХ таблицах. **Аналогия:** Пересечение двух множеств. **2**. **LEFT JOIN** (Левое соединение) **Что делает:** Возвращает ВСЕ записи из левой таблицы и совпадающие из правой. Если совпадений нет, правые поля будут `NULL`. **Аналогия:** "Все пользователи и их заказы, если есть". **3**. **RIGHT JOIN** (Правое соединение) **Что делает:** Возвращает ВСЕ записи из правой таблицы и совпадающие из левой. Если совпадений нет, левые поля будут `NULL`. **Аналогия:** "Все заказы и пользователи, которые их сделали". **4**. **FULL JOIN** (Полное соединение) **Что делает:** Возвращает ВСЕ записи из обеих таблиц. Совпадающие записи объединяются, а отсутствующие дополняются `NULL`. **Аналогия:** Объединение двух множеств. **5**. **CROSS JOIN** (Перекрёстное соединение) **Что делает:** Возвращает **декартово произведение** строк двух таблиц. Каждая строка первой таблицы соединяется с каждой строкой второй. **Когда использовать:** Когда нужно получить все возможные комбинации. **6**. **SELF JOIN** (Самосоединение) **Что делает:** Это не отдельный синтаксис, а техника, когда таблица соединяется **сама с собой**. Часто используется для иерархических данных. **Пример:** Таблица сотрудников, где каждый имеет ссылку на руководителя.