PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Aggiunta di X ore - @Query - Spring Data JPA

Non credo che PostgreSQL consenta di passare INTERVAL le istruzioni richiedono una stringa codificata con un interval '1 day' -input di stile; tuttavia puoi ottenere questo risultato eseguendo il cast di una stringa in un intervallo.

Prova a modificare la query SQL nel tuo codice in:

select a from ActivationCode a where a.creationTime + (:hoursAgo||' hour')::interval <=  CURRENT_TIMESTAMP and a.type = :type and a.account = account

In alternativa, ho appena trovato questa precedente risposta di StackOverflow , varrebbe la pena provare, ma potrebbe avere lo stesso problema (presumendo che sia correlato al parser di query di 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