データ型を確認してください 列とタイムゾーンの 。 を混乱させる可能性があります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'
で何をしますか ?