我想为每件商品找到最便宜的批发商,只要使用下表:
餐桌用品批发

article_id     wholesaler_id        price
1                    1               500
1                    2              1000
2                    1               300

主键由商品id和批发商id组成。
使用min函数有什么方法可以实现这一点吗?
这个查询实际上并没有返回正确的批发商id,但是为了将这个查询用作子查询,我需要主键的两部分。。。
select aw.article_id, aw.wholesaler_id, min(aw.price) as min_purchase_price
from Article_Wholesaler aw
group by aw.article_id;

谢谢你的帮助:)。

最佳答案

您可以将子选择与分组方式一起使用

  select aw.article_id, aw.wholesaler_id, aw.price
  from Article_Wholesaler aw
  where ( aw.article_id, aw.price in ( select  article_id, min(price)
                                        from Article_Wholesaler
                                         group by article_id )

关于mysql - 按组合键的一部分分组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40832805/

10-15 19:30