小编典典

将datetime变量的时间部分设置为18:00

sql

我需要将datetime变量从现在开始设置为两天,但时间部分必须为18:00。

例如,如果我getdate()现在打电话,我会得到2010-05-17 13:18:07.260。我需要将其设置为2010-05-19 18:00:00.000

是否有人对此有很好的摘录,或者有任何想法正确地做到这一点?


阅读 209

收藏
2021-04-17

共1个答案

小编典典

SELECT DATEADD(hh, 24 * 2 + 18, DATEADD(dd, DATEDIFF(dd, 0, GETDATE()), 0))

这会截断当前日期,并增加2天18小时(24 * 2 + 18)

可能的变化:

SELECT DATEADD(hh, 18, DATEADD(dd, DATEDIFF(dd, -2, GETDATE()), 0))
2021-04-17