Kontrollera datatypen av kolumnerna och din tidszon . Du kanske förvirrar timestamp with time zone och timestamp
.
Det verkar som att du har timestamp i din tabell, men fråga med timestamptz . På så sätt beror allt på den lokala tidszonen för din session (som som standard är serverns tidszon om inte annat anges.)
Byt båda till timestamptz , eller timestamp om tidszoner är helt irrelevanta för dig. (Om du är osäker, använd timestamptz .)
Inte orsaken till ditt problem, men din fråga bör förmodligen vara:
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 är nästan alltid fel för timestamp typer på grund av bråktal! Vad skulle din fråga göra med starttime = '2013-03-21T23:59:59.123+00' ?