注册 登录
编程论坛 SQL Server论坛

SQL 如何按日期的连续顺序置排序号

huaban 发布于 2014-04-17 16:49, 932 次点击
例如:
日期                              排序号
2014-03-10                       1
2014-03-11                       2
2014-03-12                       3
2014-04-01                       1
2014-04-02                       2
2014-04-05                       1
2014-04-07                       1
即连续的日期才生成顺序号,如果不连续就重新从1生成,
请问如何写sql语句
2 回复
#2
volte2014-04-21 09:04
用游标去处理
#3
aei1352014-04-25 10:59
SELECT 日期,ROW_NUMBER() OVER(PARTITION BY DATEADD(DAY,-序号,日期) ORDER BY 日期) 排序号 FROM
 (
 SELECT 日期,ROW_NUMBER() OVER(ORDER BY 日期) 序号 FROM TEST
 ) X
 
 
1