Saya tidak percaya PostgreSQL mengizinkan melewati INTERVAL
pernyataan memerlukan string hard-code dengan interval '1 day'
masukan -gaya; namun Anda dapat mencapai ini dengan melemparkan string ke interval.
Coba ubah kueri SQL dalam kode Anda menjadi:
select a from ActivationCode a where a.creationTime + (:hoursAgo||' hour')::interval <= CURRENT_TIMESTAMP and a.type = :type and a.account = account
Atau, saya baru saja menemukan jawaban StackOverflow sebelumnya , ini patut dicoba tetapi mungkin memiliki masalah yang sama (anggap ini terkait dengan parser kueri 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