--测试数据
ifnotobject_id(N'Tempdb..#T')isnull
droptable#T
Go
Createtable#T([ID]nvarchar(23),[TOTAL]int,[KIND]nvarchar(22),[日期]Date)
Insert#T
selectN'B11',10,N'苹果','2018-01-03'unionall
selectN'B11',50,N'香蕉','2018-01-05'unionall
selectN'B11',-20,N'梨','2018-03-03'unionall
selectN'B22',-50,N'葡萄','2018-03-08'
Go
--测试数据结束
SELECTID,TOTAL,KIND,日期
FROM(SELECTID,
SUM(TOTAL)OVER(PARTITIONBYID)ASTOTAL,
KIND,
日期,
ROW_NUMBER()OVER(PARTITIONBYIDORDERBY日期DESC)ASrn
FROM#T
)t
WHERErn=1
|