将“年份”添加到现有日期时间列以创建第二个日期时间列

LNV*_*LNV 0 sql t-sql sql-server datetime dateadd

我的 SQL Server 表中有一个列,其中有 1,000 行,其中填充了各种datetimes. 它的名称为StartTime,其数据类型为datetime2(7).

我想添加第二列,名为NewStartTimethat's 3years out from the existing datetime.

例如,如果第 1 行的值为StartTime2018-10-01 07:20:00.0000,我希望第 1 行的值为NewStartTime2021-10-01 07:20:00.0000。

我已经尝试了许多功能DATEADD(带和不带LEFT),但似乎无法正确执行。

小智 5

还可以使用DATEADD

select StartTime
  , dateadd(year, 3, StartTime) as NewStartTime 
 from LNVTable;
Run Code Online (Sandbox Code Playgroud)

SQL小提琴