先用DateDiff求出差多少年,然后再用DateAdd加上相差的年,以当前时间为例:select DATEADD(yy,2006-DATEPART ( yy, getdate() ),getdate())

解决方案 »

  1.   

    update tab set 时间字段=dateadd(yy,datediff(yy,时间字段, '2006-01-01'),T_date)   where datediff(yy,时间字段, '2006-01-01')>0
      

  2.   

    select replace('2005-10-01',left('2005-10-01',4),'2006')
      

  3.   

    select replace(convert(varchar(50),字段名,120),year(convert(varchar(50),字段名,120)),2006)
     from 表