INNER JOIN в PostgreSQL: объединение строк из двух таблиц

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

Использование INNER JOIN

Объединение таблиц users и orders по полю user_id:

SELECT users.id, users.name, orders.id AS order_id, orders.total
FROM users
INNER JOIN orders ON users.id = orders.user_id;

Этот запрос вернет только тех пользователей, у которых есть заказы.

Фильтрация результатов

Дополнение INNER JOIN условием WHERE для выбора заказов на сумму более 100:

SELECT users.id, users.name, orders.id AS order_id, orders.total
FROM users
INNER JOIN orders ON users.id = orders.user_id
WHERE orders.total > 100;

Объединение нескольких таблиц

Пример соединения трех таблиц: users, orders и products:

SELECT users.name, orders.id AS order_id, products.name AS product_name
FROM users
INNER JOIN orders ON users.id = orders.user_id
INNER JOIN products ON orders.product_id = products.id;

Этот запрос возвращает пользователей, их заказы и соответствующие товары.