Подзапросы в SQL
Last updated: 8 мая 2025 г.Теперь перейдем к подзапросам
. Вот мы например вывели максимальное число в столбце.

Оно ясное дело тоже было в какой-то строке таблицы (строка с id 7 как можно увидеть ниже).

Как же нам вывести всю строку этого максимального числа (то есть мы хотим получить всю строку с id 7)?
Если мы сделаем так:
SELECT id,name,MAX(unit_price) FROM product;

То как видим, получаем не то, что нам нужно. id и name это значения из первой строки, а нам нужны те которые находятся в той же строке где находиться максимальное значение.
Чтобы всё получилось нужно использовать подзапрос
.
Давайте выполним команду.

Первым SELECT-ом выбираются аттрибуты id,name,unit_price и из них выбирается только та строка где unit_price равное результату подзапроса(то есть второго SELECT, который в скобочках), а результатом подзапроса у нас будет максимальное значение в столбце unit_price.
То есть, как мы и хотели, вывело строку таблицы, в которой значение цены максимально. Вот так можно использовать подзапросы.
Следующие уроки
Объединение таблиц в SQL с помощью JOIN
16
мин.
Основы JDBC в Java
15
мин.
Транзакции в SQL и JDBC
13
мин.