データ型を確認してください 列とタイムゾーンの 。 を混乱させる可能性があります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 time
AND starttime < timestamp '2013-03-22'
ORDER BY id
a BETWEEN x AND y ほとんどの場合間違っている timestampの場合 分数によるタイプ!クエリはstarttime = '2013-03-21T23:59:59.123+00'で何をしますか ?