Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 一次选择中不同条件下的最小值和最大值_Mysql_Sql - Fatal编程技术网

Mysql 一次选择中不同条件下的最小值和最大值

Mysql 一次选择中不同条件下的最小值和最大值,mysql,sql,Mysql,Sql,我在一个表中列出了商品的报价和请求,我需要找到按商品分组的最高报价请求和最低报价 以最高价格获取所有请求和以最低价格获取所有报价没有大问题,但我需要为每个请求获取报价最低价格 我的桌子看起来像 ItemName | Type | ItemPrice ----------------------- item1 | offer | 100 item1 | offer | 80 item1 | request | 120 item2 | offer | 50

我在一个表中列出了商品的报价和请求,我需要找到按商品分组的最高报价请求和最低报价

以最高价格获取所有请求和以最低价格获取所有报价没有大问题,但我需要为每个请求获取报价最低价格

我的桌子看起来像

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;