DECLARE @begin_date DATETIME ='2012-08-01' DECLARE @end_date DATETIME ='2012-08-20' SELECT DATEADD(dd,number,@begin_date) FROM master..spt_values WHERE type='p' AND number BETWEEN 0 AND DATEDIFF(dd,@begin_date,@end_date)
DECLARE @begin_date DATETIME ='2012-08-01' DECLARE @end_date DATETIME ='2012-08-30'SELECT DATEADD(dd,number,@begin_date)FROM master..spt_values WHERE type='p' AND number BETWEEN 0 AND DATEDIFF(dd,@begin_date,@end_date) --楼主是取任意两个时间之间的任意一天具体时间么
select DATEADD(dd,number,'2010-01-01') from master..spt_values WHERE type='p' and number > 0 and number < DATEDIFF(dd,'2010-01-01','2010-01-03')
---参照---从2010-1-1日到sysdate的所日期 Select Trunc(To_Date('2010-1-1', 'yyyy-mm-dd'), 'mm') + Rownum - 1 x From Dba_Objects Where Rownum <= Trunc(Sysdate) - To_Date('2010-1-1', 'yyyy-mm-dd') + 1 Order By x
SQL中计算两个时间的差值用DateDiff,
.Net中可以使用TimeSpan计算差值。
DECLARE @end_date DATETIME ='2012-08-20'
SELECT DATEADD(dd,number,@begin_date)
FROM master..spt_values WHERE type='p'
AND number BETWEEN 0 AND DATEDIFF(dd,@begin_date,@end_date)
DECLARE @begin_date DATETIME ='2012-08-01'
DECLARE @end_date DATETIME ='2012-08-30'SELECT DATEADD(dd,number,@begin_date)FROM master..spt_values WHERE type='p' AND number BETWEEN 0 AND DATEDIFF(dd,@begin_date,@end_date)
--楼主是取任意两个时间之间的任意一天具体时间么
from master..spt_values
WHERE type='p' and number > 0 and number < DATEDIFF(dd,'2010-01-01','2010-01-03')
Select Trunc(To_Date('2010-1-1', 'yyyy-mm-dd'), 'mm') + Rownum - 1 x
From Dba_Objects
Where Rownum <= Trunc(Sysdate) - To_Date('2010-1-1', 'yyyy-mm-dd') + 1
Order By x