Я создал запрос в Spring boot Jpa, используя @query. Это идет какМожет ли команда group взять пользовательские входы весной boot jpa?
@Query(
"select id,sum(col_a),sum(col_b),
weekcal(to_date(?2,'mm/dd/yyyy'),weekof) as startofweek
from abc_table
where id=?1 and
weekof between to_date(?2,'mm/dd/yyyy') and to_date(?3,'mm/dd/yyyy')
group by weekcal(to_date(?2,'mm/dd/yyyy'),weekof),id")
List<object_abc> method_abc(String id,String fromdate,String todate)
Я получаю след ошибки, когда я запускаю мой тестовый случай:
[WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Error: 979, SQLState: 42000 [ERROR] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - ORA-00979: not a GROUP BY expression
ПРИМЕЧАНИЕ: weekcal моей определенного пользователя функция SQl, которая принимает два параметра даты и возвращает VARCHAR. weekof - это имя столбца.
может группироваться, беря вход пользователя в качестве аргументов в JPA, потому что тот же запрос работает отлично, когда я жестко кодирую любую дату. Пример '01 -17-2016 'вместо порядкового номера (? 2).
Заранее спасибо.
Запрос явно INVALID JPQL. В JPQL нет «недельного», «to_date». –