1

我在 MySQL 数据库中有两个表。产品和产品项目。Products 包含字段 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

但这是返回一个空数据集。

4

1 回答 1

1

试试这个:

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
于 2011-08-31T10:34:18.477 回答