2012-09-20 45 views
1

我有一个SQL数据库以下字段:计算使用十进制值的日期在SQL

@EstimatedRequiredTimeHours DECIMAL(18,2) = NULL, 
@ScheduledStartDate SMALLDATETIME = NULL, 
@ScheduledEndDate SMALLDATETIME = NULL 

我需要通过添加@EstimatedRequiredTimeHours@ScheduledStartDate计算@ScheduledEndDate

我不完全确定如何做到这一点,DATEADD()看起来不像我想要的,我的SQL不是最新的。

任何帮助,将不胜感激。

谢谢。

+0

小数点将包含小时的几分之一?如果是0.5意味着半个小时? –

回答

1

Dateadd接受整数作为第二个参数,所以小数部分被截断,为了包含它们,只需乘以60 * 60并添加秒。

set @ScheduledEndDate = dateadd(ss, @EstimatedRequiredTimeHours * 3600, @ScheduledStartDate) 
+1

3600秒= 1小时 –

+0

谢谢我在发布后在您的描述中看到:P真的很感激。 – Melanie