1

MySQL データベースに 2 つのテーブルがあります。製品および製品アイテム。Products には、product_id、product_name、image フィールドが含まれます。商品アイテムには項目 item_id、product_id、size_id、doq_id、price が含まれます。

1つの製品に対して多くの製品項目があります。

各製品の最低価格を返すステートメントはどのように作成すればよいですか?

私は次のものを持っています:

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 に答える