|
--该方法依次类推,可以构造其他有规律的数据集合 --经常遇到的问题 --例如给定一个开始时间,需要计算从开始时间到现在的连续时间
--测试语句 declare @StartTime as datetime set @StartTime='2005-6-1' declare @t table(dDate datetime) --计算连续时间 while @StartTime<=getdate() begin insert into @t select @StartTime set @StartTime=Dateadd(day,1,@StartTime) end --测试结果 dDate ------------------------------------------------------ 2005-06-01 00:00:00.000 2005-06-02 00:00:00.000 2005-06-03 00:00:00.000 2005-06-04 00:00:00.000 2005-06-05 00:00:00.000 2005-06-06 00:00:00.000 2005-06-07 00:00:00.000 2005-06-08 00:00:00.000 2005-06-09 00:00:00.000 2005-06-10 00:00:00.000 2005-06-11 00:00:00.000 2005-06-12 00:00:00.000 2005-06-13 00:00:00.000 2005-06-14 00:00:00.000 2005-06-15 00:00:00.000 2005-06-16 00:00:00.000 2005-06-17 00:00:00.000 2005-06-18 00:00:00.000 2005-06-19 00:00:00.000 2005-06-20 00:00:00.000 2005-06-21 00:00:00.000 2005-06-22 00:00:00.000 2005-06-23 00:00:00.000 2005-06-24 00:00:00.000 2005-06-25 00:00:00.000 2005-06-26 00:00:00.000 2005-06-27 00:00:00.000 2005-06-28 00:00:00.000 2005-06-29 00:00:00.000 2005-06-30 00:00:00.000 2005-07-01 00:00:00.000 (所影响的行数为 31 行)
|