我有一个datetime
字段,其值为2014-06-12 23:17:39.657
我需要检查此日期是否小于当前UTC时间。
我试过了:
SELECT *
FROM Table_Name
WHERE expire_time > GETUTCDATE()
这是代码,是存储过程的一部分,并且无法按预期工作。它返回所有记录,即使有几行Table.expire_time> UTCNOW。
如何检索表中过期日期大于UTC时间的所有记录?
答案 0 :(得分:1)
以下选项返回预期值:
select case when (cast('2014-06-14 T11:01:50.000' as datetimeoffset) > getutcdate()) then '1' else '0'end
select case when (cast('2014-06-14' as datetime) > getutcdate()) then '1' else '0'end
请注意有未来的日期(至少对我而言)
我会帮你检查你的环境变量,例如你的时钟和它的同步......也许expire_time
不是你认为的那样......还有,首先尝试静态值进一步调查。 ..