DECLARE date_cursor CURSOR FOR select distinct(date) from test order by date desc
OPEN date_cursor
DECLARE @minTime datetime,@dayTime datetime
select @minTime=min(date) from test where date is not null
print @minTime
FETCH NEXT FROM date_cursor INTO @dayTime
while @dayTime>@minTime
begin
insert into test(number) select sum(number) from test where date < @dayTime
FETCH NEXT FROM date_cursor INTO @dayTime
end
CLOSE date_cursor
DEALLOCATE date_cursor
博客展示了一段SQL代码,通过游标遍历日期数据,先定义日期游标并按降序排列,找出非空最小日期,然后在循环中,当当前日期大于最小日期时,将小于当前日期的数量总和插入到表中,最后关闭并释放游标。
1721

被折叠的 条评论
为什么被折叠?



