如何分组使用IDENTITY添加序号?

somepeople 2012-01-29 12:26:44
例子:
柜员 日期 时间 账号 金额
张三 2012-1-1 08:35 60135 50.00
张三 2012-1-1 08:36 60125 100.00
张三 2012-1-1 08:37 60139 102.00
李四 2012-1-1 08:35 60235 51.00
李四 2012-1-1 08:35 60335 52.00
张三 2012-1-2 09:35 60335 57.00
张三 2012-1-2 09:45 60335 58.00

现须对以上记录,按柜员、日期、时间添加顺序号
生成结果如下:
顺序号 柜员 日期 时间 账号 金额
1 张三 2012-1-1 08:35 60135 50.00
2 张三 2012-1-1 08:36 60125 100.00
3 张三 2012-1-1 08:37 60139 102.00
1 李四 2012-1-1 08:35 60235 51.00
2 李四 2012-1-1 08:35 60335 52.00
1 张三 2012-1-2 09:35 60335 57.00
2 张三 2012-1-2 09:45 60335 58.00

请问该如何实现呢?

...全文
73 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr_Nice 2012-01-29
  • 打赏
  • 举报
回复
if object_id('[TB]') is not null drop table [TB]
go
create table [TB] (柜员 nvarchar(4),日期 datetime,时间 time,账号 int,金额 decimal(5,2))
insert into [TB]
select '张三','2012-1-1', '08:35',60135,50.00 union all
select '张三','2012-1-1', '08:36',60125,100.00 union all
select '张三','2012-1-1', '08:37',60139,102.00 union all
select '李四','2012-1-1', '08:35',60235,51.00 union all
select '李四','2012-1-1', '08:35',60335,52.00 union all
select '张三','2012-1-2', '09:35',60335,57.00 union all
select '张三','2012-1-2', '09:45',60335,58.00

select * from [TB]


select [No.]=row_number() over (partition by 柜员,日期 order by 日期,柜员),*
from TB


/*
No. 柜员 日期 时间 账号 金额
-------------------- ---- ----------------------- ---------------- ----------- ---------------------------------------
1 李四 2012-01-01 00:00:00.000 08:35:00.0000000 60235 51.00
2 李四 2012-01-01 00:00:00.000 08:35:00.0000000 60335 52.00
1 张三 2012-01-01 00:00:00.000 08:35:00.0000000 60135 50.00
2 张三 2012-01-01 00:00:00.000 08:36:00.0000000 60125 100.00
3 张三 2012-01-01 00:00:00.000 08:37:00.0000000 60139 102.00
1 张三 2012-01-02 00:00:00.000 09:35:00.0000000 60335 57.00
2 张三 2012-01-02 00:00:00.000 09:45:00.0000000 60335 58.00

(7 行受影响)

*/
somepeople 2012-01-29
  • 打赏
  • 举报
回复
午睡的时候还在想着是否得用游标加循环语句,想不到一觉醒来就看到答案了!已经验证!
很是感谢:OrchidCat!!

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧