首页 > 解决方案 > 使用 StartDate 和 DefaultDuration 计算 EndDate

问题描述

我必须编写一个查询来计算 EndDate=(StartDate+DefaultDurationDays)-1

我已经尝试过这段代码,但它不起作用

declare @trainingstartdate datetime
    ,@trainingenddate datetime
    ,@trainingdefaultduration int
    set @trainingstartdate='2018-05-11'
    set @trainingdefaultduration=5
    set @trainingenddate =sum(training.trainingstartdate+training.trainingdefaultduration)-1

我该如何解决?

编辑:

我有这些错误:

无法绑定多部分标识符“training.trainingstartdate”

无法绑定多部分标识符“training.trainingdefaultduration”

但是这些属性在同一个表中(Training.Training)。我正在使用 SQL Server 2012

标签: sqlsql-server-2012

解决方案


假设持续时间是您可以使用的天数:

select DATEADD(day, training.trainingdefaultduration - 1, training.trainingstartdate) trainingenddate
from training

如果 startdate 和 duration 都应该从表中接收。


推荐阅读