Nevěřím, že PostgreSQL umožňuje předávání INTERVAL
příkazy vyžadují pevně zakódovaný řetězec s interval '1 day'
-stylový vstup; toho však můžete dosáhnout přetypováním řetězce na interval.
Zkuste změnit SQL dotaz v kódu na:
select a from ActivationCode a where a.creationTime + (:hoursAgo||' hour')::interval <= CURRENT_TIMESTAMP and a.type = :type and a.account = account
Případně jsem právě našel tato předchozí odpověď StackOverflow , to by stálo za vyzkoušení, ale mohl by mít stejný problém (za předpokladu, že souvisí s analyzátorem dotazů Spring Data JPA):
select a from ActivationCode a where a.creationTime + :hoursAgo * INTERVAL '1 hour' <= CURRENT_TIMESTAMP and a.type = :type and a.account = account