gpt4 book ai didi

sql - SQL Server 子查询的新手 - 希望是一个简单的查询

转载 作者:行者123 更新时间:2023-12-01 01:26:27 25 4
gpt4 key购买 nike

我无法在单个查询中解决这个问题。表 TblQcProduction 有生产订单上每个运算符(operator)的记录。

我需要找出最后一个报告生产订单的运算符(operator)是谁。

SELECT  IDX, ProdOrder, Operator
FROM dbo.TblQCProduction

返回:

IDX     ProdOrder  Operator
8050745 325184 13012
8050746 325184 13035
8050747 325184 13036
8050748 325186 13005
8050749 325186 13038
8050750 325187 13022
8050751 325191 13022
8050752 325191 13035

我需要输出为(按 prodOrder 返回 MAX IDX 的运算符):

IDX     ProdOrder Operator
8050747 325184 13036
8050749 325186 13038
8050750 325187 13022
8050752 325191 13035

我对分组或子查询并不满意 - 我感觉会有一个非常简单的答案。

最佳答案

您需要使用 ROW_NUMBER() OVER

select IDX,ProdOrder,Operator 

from
(
select IDX,ProdOrder,Operator,
ROW_NUMBER() OVER
(PARTITION BY ProdOrder ORDER BY IDX DESC) as rn
from TblQCProduction
) as T
WHERE RN=1;

SQLFiddle demo

关于sql - SQL Server 子查询的新手 - 希望是一个简单的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19027223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com