我有一个表ErpInformations。
OrderId PartNo Status
4711 | 1510 | 0
4711 | 1511 | 0
4711 | 1512 | 1
4712 | 1513 | 3
4712 | 1514 | 0
4713 | 1515 | 0
4713 | 1516 | 0
我想要“选择不同的”查询,该查询仅向我显示零件中状态最高的OrderId。
结果:
4711 | 1
4712 | 3
4713 | 0
有人解决吗?
我的第一次尝试是:
select distinct(OrderId),
(select max(Status) from ErpInformations)
from ErpInformations;
但是我当然可以得到总体最高状态。如何限制它?
答案 0 :(得分:3)
您可以尝试将MAX
与group by
一起直接使用
select OrderId,max(Status)
from ErpInformations
group by OrderId
答案 1 :(得分:1)
可以通过“按条款分组”和“最大功能”来实现。
SELECT ORDERID, MAX(STATUS) FROM ERPINFORMATIONS GROUP BY ORDERID;
SQL脚本显示具有最大可用状态的不同ORDERID。
答案 2 :(得分:0)
实现结果非常简单
select OrderId,max(Status) from ErpInformations
group by OrderId