MySQL оператор выбора с MIN - PullRequest
       27

MySQL оператор выбора с MIN

1 голос
/ 31 августа 2011

У меня есть две таблицы в базе данных MySQL. Продукты и изделия. Продукция содержит поля product_id, product_name, image. Товарный элемент содержит поле item_id, product_id, size_id, doq_id, price.

Есть много товаров для одного товара.

Как мне написать заявление, которое возвращает самую низкую цену для каждого продукта?

У меня есть следующее:

SELECT p.product_name, p.image, p.product_id, MIN(pi.price) AS price
FROM (`product_items` as pi, `product` as p) 
WHERE `pi`.`product_id` = 'p.product_id' 
GROUP BY `p`.`product_name` 
ORDER BY RAND() 
LIMIT 3

Но это возвращает пустой набор данных.

1 Ответ

1 голос
/ 31 августа 2011

Попробуйте это:

SELECT pr.id, pr.name, pr.image, MIN(pi.price) min_price
FROM products pr INNER JOIN product_items pi
ON pr.product_id = pi.product_id
GROUP BY pr.id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...