现在商品 item 表结构
id, product_id, type, price
一个 product 下有多个商品,商品 item 有 4 种 type 值(0,1,2,3),同一个 type 下可以有多个同样 type 与同样 product_id 的商品。
现在有 N 个商品 id,我要根据这些商品 id,来获取这些商品的 product_id,然后根据这些 product_id 再获取 item 表里面,所有 product_id 与 4 个 type 值组合下的一个 price 最低的商品 的列表。
目前我是这么写的
SET session sql_mode=(SELECT REPLACE(@@sql_mode, 'ONLY_FULL_GROUP_BY', '')); SELECT min(price), id, product_id, type FROM item WHERE product_id IN( SELECT product_id FROM item WHERE id IN (1,2,3,4,5) ) GROUP BY product_id, type 应该怎么写成一句 sql ?
