Sprawdź typ danych kolumn i Twojej strefy czasowej . Możesz być mylący timestamp with time zone
i timestamp
.
Wygląda na to, że masz timestamp
w tabeli, ale zapytanie z timestamptz
. W ten sposób wszystko zależy od lokalnej strefy czasowej sesji (która domyślnie jest strefą czasową serwera, jeśli nie określono inaczej).
Przełącz oba na timestamptz
lub timestamp
jeśli strefy czasowe są dla Ciebie zupełnie nieistotne. (W razie wątpliwości użyj timestamptz
.)
Nie przyczyna problemu, ale Twoje zapytanie prawdopodobnie powinno brzmieć:
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
jest prawie zawsze źle dla timestamp
typy ze względu na liczby ułamkowe! Co zrobi Twoje zapytanie z starttime = '2013-03-21T23:59:59.123+00'
?