我错过了一些东西,但我不知道它是什么。Datediff在68岁以下时溢出
如果我运行下面的查询:
select
max(DATEDIFF(SECOND, EventStartTimeStamp_UTC0, EventEndTimeStamp_UTC0)) as EventDuration
from allEvent
,我发现了以下错误:
The datediff function resulted in an overflow. The number of dateparts separating two date/time instances is too large. Try to use datediff with a less precise datepart.
我知道,当2个日期时间更使用DATEDIFF与秒可以给这个错误超过68年。这不应该是我的情况,因为在表中的最早的数据是2013年一月
我跑下面的查询,以确保没有空的DateTime
select count(*)
from allEvent
where EventStartTimeStamp_UTC0 is null or EventStartTimeStamp_UTC0 is null
没有记录具有零日期时间
如果我添加以下where子句来查询它的工作原理
select DATEDIFF(second, EventStartTimeStamp_UTC0, EventEndTimeStamp_UTC0) as EventDuration
from allEvent
where DATEDIFF(Minute, EventStartTimeStamp_UTC0, EventEndTimeStamp_UTC0) >= 1
这不起作用:
select DATEDIFF(second, EventStartTimeStamp_UTC0, EventEndTimeStamp_UTC0) as EventDuration
from allEvent
where DATEDIFF(Minute, EventStartTimeStamp_UTC0, EventEndTimeStamp_UTC0) < 1
感谢您的帮助
是否有开始日期在结束日期之后的任何实例? –
在几分钟内完成并检查最大和最小值? –
还是日期相同? –