SQL Server中直接循环写入数据

构建测试表很有用,呵呵,事实上我就是老记不住SQL Server支持While循环,我总是习惯用FOR循环,结果在帮助里查半天总是找不到。  

declare @i int
set @i=1
while @i<30
begin
  insert into table (colume) values(@i)
  set @i=@i+1
end

-------------------------------------------------------------------------------------------------------------

写了一个生成日期表的sql,呵呵,为自己的背课文订计划:P

declare @lesson int
set @lesson = 1

declare @weekIndex int
set @weekIndex = 1

declare @Date datetime
set @Date = dateadd(day, datediff(day, 0,GetDate()),0) --这样可以去掉讨厌的小时分秒

while @lesson < 97
begin
 set @weekIndex = @weekIndex + 1
 if @weekIndex = 7
 begin
  insert into NewConcept2 (Lesson, FinishDate) values(0,@Date)
  set @weekIndex = 0
 end
 else
 begin
  insert into NewConcept2 (Lesson, FinishDate) values(@lesson, @Date)
  set @lesson = @lesson+1
 end  
 
 set @Date = DateAdd(day, 1, @Date)

end

展开阅读全文

没有更多推荐了,返回首页