sql找出连续时间连续日期和连续数字

tips:

1 代码在sqlserver2005实现,其他数据需要经过修改

2 计算连续时间和连续数字是同一类问题,所以合起来一起说,计算连续时间的时候只不过将时间转换成数字而已

3 此方法相对高效

 

第一步

构造数据

create table #tmptable(id int identity(1,1),rq smalldatetime)
insert #tmptable values('2010.1.1')
insert #tmptable values('2010.1.2')
insert #tmptable values('2010.1.3')
insert #tmptable values('2010.1.6')
insert #tmptable values('2010.1.7')
insert #tmptable values('2010.1.10')
insert #tmptable values('2010.1.11')
insert #tmptable values('2010.1.12')
insert #tmptable values('2010.1.19')
insert #tmptable values('2010.1.20')
insert #tmptable values('2010.1.22')
insert #tmptable values('2010.1.23')
insert #tmptable values('2010.1.28')

第二步

临时中间表

select id,rq,datediff(d,(select min(rq) from #tmptable),rq)+1 idd into #

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值