SQL 语句简单的循环怎么写啊!
发布网友
发布时间:2022-04-09 17:22
我来回答
共6个回答
热心网友
时间:2022-04-09 18:51
**************
修改了一下:
**************
declare @month_tmp varchar(2);
declare @day_tmp varchar(2);
set @month_tmp = '1';
set @day_tmp = '1';
while(@month_tmp < '13')
begin
while(@day_tmp < '30')
begin
select * from table1 where month=@month_tmp and day=@day_tmp
set @day_tmp = @day_tmp + 1
end
set @month_tmp = @month_tmp + 1
set @day_tmp = 1
end
*********************************************************
select * from table1 where
month in('1','2','3','4','5','6','7','8','9','10','11','12'
and
day in('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30');
---
以上,希望对你有所帮助。
热心网友
时间:2022-04-09 20:09
不了解你具体需要取什么数据 ,以下仅表达出SQL的简单的循环方法:
declare @i int,@j int
set @i=1
set @j=1
while(@i<=12)
begin
while(@j<=31)
begin
select * from table1 where month=convert(varchar(2),@i) and
day=convert(varchar(2),@j)
set @j=@j+1
end
set @j=1
set @i=@i+1
end
热心网友
时间:2022-04-09 21:44
declare @i int
declare @j int
set @i=1
set @j=1
while @i<12
begin
while @j<31
begin
select * from table1 where month=@i and day=@j
set @j=@j+1
continue
end
set @j=1
set @i=@i+1
continue
end
不过好象没有必要啊,你要查什么啊?
热心网友
时间:2022-04-09 23:35
你最好是把你的需要以及表结构还有一些简单的数据贴出来
如果要循环,那就在过程或者程序块里实现
热心网友
时间:2022-04-10 01:43
我想知道,你这样做,有啥目的,或者说,干吗用?
热心网友
时间:2022-04-10 04:08
对回答者 无语~~~~~
对出题者 无语ing~~