return sessionFactory.getCurrentSession().
createQuery("FROM Weather WHERE city_id = :id AND date " +
"BETWEEN now()::date AND now()::date + (:days - 1)").
setInteger("id", city_id).setString("days", days).list();
получая ошибку:
org.hibernate.hql.ast.QuerySyntaxException: unexpected token: :
Как я могу использовать этот синтаксис в HQL?
В основном проблема в том, что я хочу использовать двоеточие (:) в своем запросе, но когда hibernate видит двоеточие, он думает, что это параметр (параметр: имя_параметра - синтаксис для параметров в HQL), как вы можетесм. из моих 2 использований (:id and :days
).
Но когда я использую оператор now () :: date, это специфический синтаксис postgreSQL, hibernate разрушает все.