@StartTime datetime@EndTime datetime存储过程中传入上述两个参数,如果@StartTime = '2010-02-01'
@EndTime = '2010-02-05'
则查询出结果:2010-02-01
2010-02-02
2010-02-03
2010-02-04
2010-02-05求具体SQL语句
@EndTime = '2010-02-05'
则查询出结果:2010-02-01
2010-02-02
2010-02-03
2010-02-04
2010-02-05求具体SQL语句
from master..spt_values
where type='P' and dateadd(day,number,@StartTime)<=@EndTime
from master..spt_values
where type='P'
and number<=datediff(dd,@StartTime,@EndTime)
中提供了 0-2047个连续的数,利用这做
drop procedure date
go
create procedure date
@starttime datetime,
@endtime datetime
as
select convert(char(10),dateadd(dd,number,@starttime),120)
from master..spt_values where type='p' and dateadd(dd,number,@starttime)<=@endtime
go exec date '2010-01-03','2010-01-05'----------
2010-01-03
2010-01-04
2010-01-05(3 行受影响)