How can I use a SQL UPDATE statement to add 1 year to a DATETIME column?

前端 未结 6 1772
难免孤独
难免孤独 2020-12-05 23:27

I want to add 1 year to a datetime-type column in every single row in a table. Adding using an UPDATE statement is easy for numeric types. ex:

UPDATE TABLE S         


        
相关标签:
6条回答
  • 2020-12-05 23:50

    There is in fact a DATEADD statement in T-SQL, you can find it here

    UPDATE Procrastination SET DropDeadDueDate = DATEADD(yyyy,1,DropDeadDueDate)
    

    EDIT: You could use year, yy, or yyyy for the first argument of DATEADD.

    0 讨论(0)
  • 2020-12-05 23:54

    UPDATE Procrastination SET DropDeadDueDate =
    DATEADD(yy, 1, DropDeadDueDate)

    ref: http://doc.ddart.net/mssql/sql70/da-db_5.htm

    0 讨论(0)
  • 2020-12-05 23:55
    UPDATE Procrastination SET DropDeadDueDate = DATEADD(year, 1, DropDeadDueDate)
    

    http://msdn.microsoft.com/en-us/library/ms186819.aspx

    0 讨论(0)
  • 2020-12-06 00:00

    SQL Server has a DATEADD function.

    http://msdn.microsoft.com/en-us/library/aa258267(SQL.80).aspx

    0 讨论(0)
  • 2020-12-06 00:02

    The DateAdd function should do what you want.

    UPDATE Procrastination SET DropDeadDueDate = DateAdd(yy, 1, DropDeadDueDate)
    
    0 讨论(0)
  • 2020-12-06 00:08

    It could be done with a DATEADD() function like this:

    UPDATE Procrastination SET DropDeadDueDate = DATEADD(yy, 1, DropDeadDueDate)
    
    0 讨论(0)
提交回复
热议问题