我也说不上来,我给你看下我写的代码 declare @q char(10);
set @q=fsdg
Select a,b,
when a='' then (
update qq set a=
Case
when a='' then '@1@'+cast(cast(datediff(day,b,getdate()) as float)/10000 as varchar(50))+'&1&' )
when a=@q then @q+'@1@'+cast(cast(datediff(day,b,getdate()) as float)/10000 as varchar(50))+'&1&'
When cast(datediff(day,b,getdate()) as float) /100>1
Then replace(a,substring(A,Charindex('@1@',A)+len('@1@') ,charindex('&1&',A)-Charindex('@1@',A)-len('@1@')),0.0000)
When cast(datediff(day,b,getdate()) as float) /100<=1
Then replace(a,substring(A,Charindex('@1@',A)+len('@1@') ,charindex('&1&',A)-Charindex('@1@',A)-len('@1@')),1.0000-(convert(decimal(18,4),cast(datediff(day,b,getdate()) as float)/100,0)))
End
From qq