储存日期加上第二栏中的45天

时间:2019-06-13 03:50:10

标签: sql sql-server

表中有两列,其中第一列是“上次重置日期”,第二列是“下一次重置日期”。当我在“上次重置日期”列中输入日期时,我希望在第一列的“下一次重置日期”列中加上45天

例如如果上次重置日期=“ 2019年4月17日”,则下一个重置日期将是“ 2019年5月27日”。

2 个答案:

答案 0 :(得分:3)

我建议您使用计算字段。

CREATE TABLE dbo.ResetDate
(
     PersonName NVARCHAR(30),
     LastResetDate DATE,
     NextResetDate AS DATEADD(DAY, 45, LastResetDate) 
)    

INSERT INTO ResetDate (PersonName, LastResetDate) 
VALUES ('Fred', '2019-04-17T00:00:00.000'),
       ('Mary', '2019-06-19T00:00:00.000')

SELECT * FROM dbo.ResetDate

-- PersonName   LastResetDate   NextResetDate
-- Fred         2019-04-17      2019-06-01
-- Mary         2019-06-19      2019-08-03

注意:您指定日期必须相差45天,但您的示例2019年4月17日和2019年5月27日相差40天。

答案 1 :(得分:0)

您可以尝试这个。.

 Insert into [Table Name] ( InsertDate, NextDate )
 Values ( yourdate, DateAdd(day, 45, yourdate ) )

这只是示例代码。