Kiểm tra loại dữ liệu trong số các cột và múi giờ của bạn . Bạn có thể nhầm lẫn timestamp with time zone
và timestamp
.
Có vẻ như bạn có timestamp
trong bảng của bạn, nhưng truy vấn bằng timestamptz
. Bằng cách này, tất cả phụ thuộc vào múi giờ địa phương trong phiên của bạn (mặc định là múi giờ của máy chủ nếu không được chỉ định khác.)
Chuyển cả hai sang timestamptz
hoặc timestamp
nếu múi giờ hoàn toàn không liên quan đến bạn. (Nếu nghi ngờ, hãy sử dụng timestamptz
.)
Không phải nguyên nhân gây ra sự cố của bạn, nhưng truy vấn của bạn có thể là:
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
hầu như luôn luôn sai cho timestamp
loại do số phân số! Truy vấn của bạn sẽ làm gì với starttime = '2013-03-21T23:59:59.123+00'
?