表A,有2个字段,[day]和flag
现在这个表是空的,里面有没有数据。页面传一个变量到后台,年(比如说是2011)。怎么写一个SQL语句,
可以一下子生成一年的数据,
这样的数据,第2个字段flag,都是0就行。2011-01-01
2011-01-02
2011-01-03
...
2011-12-31一个很重要的要求:不能使用临时表
现在这个表是空的,里面有没有数据。页面传一个变量到后台,年(比如说是2011)。怎么写一个SQL语句,
可以一下子生成一年的数据,
这样的数据,第2个字段flag,都是0就行。2011-01-01
2011-01-02
2011-01-03
...
2011-12-31一个很重要的要求:不能使用临时表
from master..spt_values
where type='p' and number < datediff(dd,cast(DatePart(year,getdate()) as char(4))+'-01-01',
cast(DatePart(year,getdate()) as char(4))+'-12-31')
/*
日期
-----------------------
2011-01-01 00:00:00.000
2011-01-02 00:00:00.000
2011-01-03 00:00:00.000
2011-01-04 00:00:00.000
2011-01-05 00:00:00.000
2011-01-06 00:00:00.000
2011-01-07 00:00:00.000
2011-01-08 00:00:00.000
2011-01-09 00:00:00.000
2011-01-10 00:00:00.000
2011-01-11 00:00:00.000
2011-01-12 00:00:00.000
..
set @str='2011'select dateadd(dd,number,@str+'-01-01') as 日期
from master..spt_values
where type='p' and number < datediff(dd,@str+'-01-01',
@str+'-12-31')