如何得到这样的数据
比如输入 2011/1/1 ,2011/2/1想得到的数据是
2011/1/1
2011/1/2
2011/1/3
2011/1/4
2011/1/5
........
........
........
2011/1/29
2011/1/30
2011/1/31
2011/2/1没有表的,
如何些啊
比如输入 2011/1/1 ,2011/2/1想得到的数据是
2011/1/1
2011/1/2
2011/1/3
2011/1/4
2011/1/5
........
........
........
2011/1/29
2011/1/30
2011/1/31
2011/2/1没有表的,
如何些啊
最笨的办法
DateTime dt1=DateTime.Parse('2011/1/1');
DateTime dt2=DateTime.Parse('2011/2/1');
List<DateTime> lstDT=new List<DateTime>();
while(dt1>dt2)
{
lstDT.add(dt1);
dt1=dt1.AddDay();
}
纯手打没测试
select @str1='2011/1/1',@str2='2011/2/1'select convert(varchar(10),dateadd(dd,number,cast(@str1 as datetime)),111) as 日期
from master..spt_values
where type='p' and number<DATEDIFF(DD,cast(@str1 as datetime),cast(@str2 as datetime))
/*
日期
----------
2011/01/01
2011/01/02
2011/01/03
2011/01/04
2011/01/05
2011/01/06
2011/01/07
2011/01/08
.......
declare @date1 datetime
declare @date2 datetime
set @date1 = '2011/1/1'
set @date2 = '2011/2/1'
select datediff(day,@date1,@date2)
select dateadd(day,number,@date1),number from master.dbo.spt_values
where type ='p' and number < =datediff(day,@date1,@date2)