Я использую HQL для получения данных через класс DAO, но он выдает ошибку, указанную ниже:
ERROR org.hibernate.hql.PARSER - <AST>:0:0: unexpected AST node: query
Ниже мой Hql Query:
select new com.shaikh.dto.UserResult ( user.userSurName, avg((select avg(v1.age) from com.shaikh.dto.UserResult v1 where v1.joinDate between to_date(:dayFirst, 'dd-Mon-yy') and to_date(:dayLast, 'dd-Mon-yy') )), avg(user.age) ) from com.shaikh.dto.User user group by user.userSurName";
String [] paramNames = { "dayFirst", "dayLast" };
Object [] values = { firstDay,lastDay};
return getHibernateTemplate().findByNamedParam(queryString, paramNames, values);
Я использую Oracle 11g в качестве базы данных.
Если я заменил вложенную функцию avg () на простой avg (user.age) для тестирования, он будет работать нормально, поэтому кажется, что сопоставления классов работают нормально. Хотя я получаю ошибку, как указано выше, которая сообщает, что запрос hql не является правильным. Я не уверен, как я могу это исправить. Заранее спасибо :)
Спасибо и всего наилучшего,
Shariq