declare @date datetime,@newdate datetime
declare @cn int
set @cn=89--赋初值
while (@cn>0)
begin
select @newdate=dateadd(month,@date)
insert into yourtable(fieldname) values(@newdate)
set @date=@newdate
set @cn=@cn-1
end--计算时间间隔天数
select datediff(day,@date,@newdate)
declare @cn int
set @cn=89--赋初值
while (@cn>0)
begin
select @newdate=dateadd(month,@date)
insert into yourtable(fieldname) values(@newdate)
set @date=@newdate
set @cn=@cn-1
end--计算时间间隔天数
select datediff(day,@date,@newdate)
ID Buydate period periodcount Content Inputdate
1 2003-02-22 0.5 5 川A33506 2004-03-24
2 2001-05-20 1.8 8 川A56985 2004-03-24
3 2002-08-10 2 2 川A97503 2004-03-24
以上程序可表示为以下关系:
Datetime newdate;
Datetime Defdate;
Defdate=Buydate;
while(periodcount>0)
{
newdate=Defdate+period*12;
//save the newdate to anthor database
.....
Defdate=newdate;
}
但也要注意的是buydate为字段的值,它不至一条!!!!
那个存放newdate的数据库我们可以设一下结构:
并给出以下记录的一些计算结果如下共参考
ID PID newdate inputdate
1 1 2003-08-22 2004-03-24
2 1 2004-02-22 2004-03-24
3 1 2004-08-22 2004-03-24
4 1 2005-02-22 2004-03-24
5 1 2005-08-22 2004-03-24
6 2 .................
7 2 ........
..........
14 3 2004-08-10 2004-03-24
15 3 2006-08-10 2004-03-24