以下的文章主要向大家讲述的是实现SQL Server分组排序之后取每组的第N行数据的实际操作步骤,我们首先是以展示代码select 的方式来引出其实际操作步骤,以下就是文章的主要内容描述。
示例代码select
- A.[DocNo] as [docno],
- A1.[Item_ItemCode] as [itemcode],
- A2.[LineNum] as [linenum],
- A2.[ARBillLine] as [arbillLine],
- A2.[Maturity] as [maturity],
- A2.[AROCMoney_TotalMoney] as [totalmoney
示例代码select
- A.[DocNo] as [docno],
- A1.[Item_ItemCode] as [itemcode],
- A2.[LineNum] as [linenum],
- A2.[ARBillLine] as [arbillLine],
- A2.[Maturity] as [maturity],
- A2.[AROCMoney_TotalMoney] as [totalmoney],
- A2.[AROCMoneyBalance_TotalMoney] as [totalBalanceMoney]
- into #tempShouhuoFenqi
- from AR_ARBillHead as A
- left join [AR_ARBillLine] as A1 on (A.[ID] = A1.[ARBillHead])
- left join [AR_ARInstalment] as A2 on (A1.[ID] = A2.[ARBillLine])
- group by A.DocNo,A1.Item_ItemCode,A2.LineNum,A2.ARBillLine,A2.Maturity,A2.AROCMoney_TotalMoney,A2.AROCMoneyBalance_TotalMoney
- -- select * from #tempShouhuoFenqi
- -- drop table #tempShouhuoFenqi
合同起始日期:第期的日期
- select docno,arbillline,maturity1
- into #tempMaturity1 from
- (
- select docno,arbillline
- ,maturity as maturity1,
- row_number() over
- (partition by docno,arbillline
按docno,arbillline分组
order by maturity asc) as rowno --按maturity排序
- from #tempShouhuoFenqi ) x
where x.rowno=2 --取SQL Server分组排序后的第行
- ---- select * from #tempMaturity1
- ---- drop table #tempMaturity1
以上的相关内容就是对SQL Server分组排序后取每组的第N行数据的介绍,望你能有所收获。
【编辑推荐】
- SQL Server数据库管理中的10大纽带
- 安装MS SQL Server 2000失败的缘由是什么?
- SQL Server索引实际结构的理解
- SQL Server索引的使用误区讲述
- C#来对SQL Server存储过程进行创建