B
Backend
@easy_backend3.9K подп.
278просмотров
7.1%от подписчиков
16 марта 2026 г.
questionScore: 306
🤔 Как с помощью одного запроса можно выбрать данные из двух таблиц? Чтобы выбрать данные из двух таблиц в одном запросе, используется оператор JOIN. Например, INNER JOIN объединяет строки, где есть совпадения в обеих таблицах, а LEFT JOIN возвращает все строки из первой таблицы и соответствующие строки из второй, заполняя NULL там, где данных нет. 🚩Отличия между видами JOIN в SQL В SQL существует несколько видов операторов JOIN, которые позволяют объединять данные из двух или более таблиц на основе определенных условий. Основные типы JOIN включают INNER JOIN, LEFT JOIN, RIGHT JOIN, и каждый из них имеет свои особенности и использование. Рассмотрим их различия на примере двух таблиц: Таблица A: id | name ----------- 1 | Alice 2 | Bob 3 | Charlie Таблица B: id | city ----------- 1 | New York 3 | Los Angeles 4 | Chicago 🟠INNER JOIN INNER JOIN возвращает только те строки, которые имеют совпадения в обеих таблицах. Если нет совпадающих строк, такие строки не включаются в результат. SELECT A.id, A.name, B.city FROM A INNER JOIN B ON A.id = B.id; Результат: id | name | city ------------------------ 1 | Alice | New York 3 | Charlie | Los Angeles 🟠LEFT JOIN (или LEFT OUTER JOIN) LEFT JOIN возвращает все строки из левой таблицы (A) и совпадающие строки из правой таблицы (B). Если совпадения не найдено, в результате будут строки из левой таблицы с NULL значениями для столбцов из правой таблицы. SELECT A.id, A.name, B.city FROM A LEFT JOIN B ON A.id = B.id; Результат: id | name | city ------------------------ 1 | Alice | New York 2 | Bob | NULL 3 | Charlie | Los Angeles 🟠RIGHT JOIN (или RIGHT OUTER JOIN) RIGHT JOIN возвращает все строки из правой таблицы (B) и совпадающие строки из левой таблицы (A). Если совпадения не найдено, в результате будут строки из правой таблицы с NULL значениями для столбцов из левой таблицы. SELECT A.id, A.name, B.city FROM A RIGHT JOIN B ON A.id = B.id; Результат: id | name | city ------------------------ 1 | Alice | New York 3 | Charlie | Los Angeles 4 | NULL | Chicago 🟠FULL JOIN (или FULL OUTER JOIN) FULL JOIN возвращает все строки, когда есть совпадение в одной из таблиц. Это объединение LEFT JOIN и RIGHT JOIN. Если совпадения не найдено, результат будет содержать NULL значения для столбцов из другой таблицы. SELECT A.id, A.name, B.city FROM A FULL JOIN B ON A.id = B.id; id | name | city ------------------------ 1 | Alice | New York 2 | Bob | NULL 3 | Charlie | Los Angeles 4 | NULL | Chicago Ставь 👍 и забирай 📚 Базу знаний
278
просмотров
2554
символов
Да
эмодзи
Нет
медиа

Другие посты @easy_backend

Все посты канала →
🤔 Как с помощью одного запроса можно выбрать данные из двух — @easy_backend | PostSniper