来自带有BETWEEN时间戳记的SQL查询的意外结果

来自带有BETWEEN时间戳记的SQL查询的意外结果,第1张

来自带有BETWEEN时间戳记的SQL查询的意外结果

检查列的 数据类型 和您的 时区 。您可能会感到困惑

timestamp with time zone

timestamp

看起来像您

timestamp
的表中一样,但是使用进行查询
timestamptz
。这样,这完全取决于会话的本地时区(如果未另行指定,则默认为服务器的时区)。

将两者都切换为

timestamptz
,或者
timestamp
如果时区与您完全无关。(如有疑问,请使用
timestamptz
。)

不是您的问题的原因,但您的查询可能应该是:

SELECt id, text, category, starttime, endtime, creation FROM   entries WHERe  starttime >= timestamp '2013-03-21' -- defaults to 00:00 timeAND    starttime <  timestamp '2013-03-22'ORDER  BY id

a BETWEEN x AND y
几乎总是错
timestamp
,由于小数的类型!您的查询将做
starttime ='2013-03-21T23:59:59.123+00'
什么?



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5666404.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存