Declare @StartDate varchar(10)
Declare @EndDate varchar(10)
Set @StartDate='2000-01-01'
Set @EndDate='2003-03-02'
Create Table #YearMonth
(
YM varchar(10)
)
While @StartDate<=@EndDate
Begin
Insert Into #YearMonth(YM) Values(Left(@StartDate,7))
Set @StartDate=Convert(varchar,DATEADD(M,1,@StartDate),23)
End
Select * From #YearMonth
Drop Table #YearMonth
---------------------------------------我修改了之后的--------------------------------------------------
if exists(select * from sysobjects where xtype='p' and name='MakeTimetb')
drop proc MakeTimetb
Create proc MakeTimetb
@StartDate datetime,
@EndDate datetime
as
begin
Create Table ##YearMonth(DT datetime) --全局临时表
While @StartDate<=@EndDate
Begin
Insert Into ##YearMonth(DT) Values(@StartDate)
Set @StartDate=DATEADD(mi,1,@StartDate)
End end
exec MakeTimetb @StartDate='2000-01-01 00:00:00',@EndDate='2000-01-04 23:59:59'
Select * From ##YearMonth
Drop Table ##YearMonth