如题,现在用的是SqlServer2005,里边有一列是日期,格式是“2006-10-10”,想把这些日期统一加上一年,变成“2007-10-10”,应该怎么做呀?
请哪位强人帮帮忙,我对这个数据库不是很熟。
请写详细些,我菜~~~~呵呵

解决方案 »

  1.   

    update tab set col=dateadd(yy,1,col)
      

  2.   

    create table tb(dt datetime)
    insert into tb values('2006-10-10')
    insert into tb values('2006-10-11')
    insert into tb values('2006-10-12')
    insert into tb values('2006-10-13')
    insert into tb values('2006-10-14')
    insert into tb values('2006-10-15')
    go--search
    select dateadd(yy,1,dt) dt from tb--update
    update tb set dt = dateadd(yy,1,dt)select * from tbdrop table tb/*
    dt                                                     
    ------------------------------------------------------ 
    2007-10-10 00:00:00.000
    2007-10-11 00:00:00.000
    2007-10-12 00:00:00.000
    2007-10-13 00:00:00.000
    2007-10-14 00:00:00.000
    2007-10-15 00:00:00.000(所影响的行数为 6 行)*/
      

  3.   

    update 之前要注意先select看看结果,免得错了select dateadd(yy,1,'2006-10-10')
      

  4.   


    update tb 
    set time = dateadd(yy,1,time)
      

  5.   

    楼上速度都好快啊--加一年
    Declare @time datetime
    Set @time=GETDATE()
    Print convert(varchar(20),@time,120)
    Set @time=DATEADD(YEAR,1,@time)
    Print convert(varchar(20),@time,120)/**
    output
    2010-05-21 08:07:06
    2011-05-21 08:07:06
    **/
    --减1年
    Set @time=GETDATE()
    Print convert(varchar(20),@time,120)
    Set @time=DATEADD(YEAR,-1,@time)
    Print convert(varchar(20),@time,120)
    /**
    output
    2010-05-21 08:08:15
    2009-05-21 08:08:15
    **/
      

  6.   

    --加一年
    Declare @time datetime
    Set @time=GETDATE()
    Print convert(varchar(20),@time,120)
    Set @time=DATEADD(YEAR,1,@time)
    Print convert(varchar(20),@time,120)/**
    output
    2010-05-21 08:07:06
    2011-05-21 08:07:06
    **/
    --减1年
    Set @time=GETDATE()
    Print convert(varchar(20),@time,120)
    Set @time=DATEADD(YEAR,-1,@time)
    Print convert(varchar(20),@time,120)
    /**
    output
    2010-05-21 08:08:15
    2009-05-21 08:08:15
    **/
      

  7.   

    来晚啦。
    update 表名 set 列名=dateadd(yy,1,列名)
      

  8.   

    update tb set time_col = dateadd(year,1,time_col)