我正在尝试使用DATEADD函数在SQL SERVER中添加几个小时。但是当我尝试这个时,
SELECT DATEADD(Hour, 0.5, GETDATE())
不加0.5小时。怎么解决这个问题?
答案 0 :(得分:9)
你做不到。它在文档上有很好的描述:DATEADD (Transact-SQL)
的号强> 的
是一个可以解析为添加的int的表达式 到日期的日期部分。用户定义的变量有效。
如果指定带小数部分的值,则会截断分数 没有四舍五入。
的更新强> 的
你可以尝试:
SELECT DATEADD(Second, 0.5 * 60 * 60, GETDATE())
当然 - 您可以更改DATEPART
和乘数以获得所需的精度。
答案 1 :(得分:4)
您无法添加部分小时数,只需几小时。使用minute
半小时
SELECT DATEADD(minute, 30, GETDATE())
答案 2 :(得分:0)
我发现了另一种方法,在日期中添加一个数字而不是使用该函数可用于分数。例如:
GETDATE() + n
其中 n是天数。在1个半小时内,您可以使用:
GETDATE() + 0.5/24