我现有一个表Ta,里面有ID、D1、D2、D3字段,分别表示标识、日期1、日期2、日期3。
原来入库时,日期1是入库时系统当天的日期,日期2是比日期1多n(1到100之间)天的随意日期,日期3为空。
现要求:随着时间的推移,如果系统当天的日期大于或等于日期2了,则日期3=日期2-11,即日期3比日期2少11天。
我想写一个存储过程,每天系统自动调用一次,更新满足条件数据的日期3值,请问如何写?
Create proc aaaa
Declare @ID int,@D1 datetime,@D2 datetime,@D3 datetime
AsGo
原来入库时,日期1是入库时系统当天的日期,日期2是比日期1多n(1到100之间)天的随意日期,日期3为空。
现要求:随着时间的推移,如果系统当天的日期大于或等于日期2了,则日期3=日期2-11,即日期3比日期2少11天。
我想写一个存储过程,每天系统自动调用一次,更新满足条件数据的日期3值,请问如何写?
Create proc aaaa
Declare @ID int,@D1 datetime,@D2 datetime,@D3 datetime
AsGo
As
update Ta set D3=D2-11
where Datediff(day,D2,getdate())>=0Go
--Declare @ID int,@D1 datetime,@D2 datetime,@D3 datetime
As
update Ta set D3=D2-11 where D2<=getdate()
Go