Коррелирующий подзапрос [сообщение #4156] |
Mon, 22 January 2024 19:01 |
bugzzy
Сообщений: 5 Зарегистрирован: January 2024
|
Junior Member |
|
|
Не могу вывести максимальное значение по каждой категории, выводит только самое макс занчение, помогите пожалуйста разобраться
Задача
Найди самые дорогие товары в каждой категории товаров (таблица product_price). Выведи столбцы:
category_name - название категории товара;
product_name - название товара;
price - стоимость товара.
Отсортируй результат сначала по названию категории, затем по названию товара.
Помни, что в подзапросах тоже можно выполнять соединение таблиц.
|
|
|
|
|
|
|
|
|
|
Re: Коррелирующий подзапрос [сообщение #4195 является ответом на сообщение #4194] |
Tue, 23 January 2024 18:14 |
bugzzy
Сообщений: 5 Зарегистрирован: January 2024
|
Junior Member |
|
|
Ребята, я допёр, в любом случае спасибо что откликнулись
SELECT c.name as category_name,
p.name as product_name,
pp.price as price
FROM product p
JOIN product_price pp
ON pp.product_id = p.product_id
JOIN category c
ON p.category_id = c.category_id
JOIN
(
SELECT c.name as name, max(ppm.price) as price
FROM product_price ppm
JOIN product p on ppm.product_id = p.product_id
JOIN category c on p.category_id = c.category_id
GROUP BY c.name
) as a ON pp.price = a.price and c.name = a.name
ORDER BY category_name, product_name, price
|
|
|