我在一个表中有一个商品的报价和要求清单,我需要找到按商品分组的最高报价和最低报价
获得所有最高价格的请求和最低价格的所有报价都没有大问题,但我需要为每个请求获得最低价格的报价。
我的桌子看起来像
ItemName | Type | ItemPrice
-----------------------
item1 | offer | 100
item1 | offer | 80
item1 | request | 120
item2 | offer | 50
item2 | request | 30
item2 | request | 60
因此我需要
ItemName | OfferMinPrice | RequestMaxPrice
-----------------------
item1 | 80 | 120
item2 | 50 | 60
最佳答案
您可以只使用条件聚合:
select itemname,
min(case when type = 'offer' then itemprice end) as min_offerprice,
max(case when type = 'request' then itemprice end) as max_requestprice,
from t
group by itemname;
关于mysql - 一键选择不同条件下的最小和最大,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53997790/