在达到最小日期时,我已经看到很多关于 datetime2 溢出的线程,但我的数据中没有。此外,声明中的DATEADD
工作正常SELECT
,但声明中没有WHERE
。这是我正在尝试做的事情:
SELECT DATEADD(hour, -8, MyDate) as 'PST Date'
FROM [dbo].[MyTable]
WHERE DATEADD(hour, -8, MyDate) between '2017-01-01' and '2017-02-01'
解决为:
Adding a value to a 'datetime2' column caused an overflow.
DATEADD
如果我从语句中取出,这个查询就可以正常工作WHERE
,但是我的结果会发生 8 小时的轮班。知道为什么会发生这种情况,或者我能做些什么来使WHERE
工作正常吗?谢谢!