Как использовать приведение в HQL ИЛИ JPQL? - PullRequest
0 голосов
/ 27 мая 2020

Привет, мой запрос HQL выглядит следующим образом.

 @Query("select A.TheaterName as theater,A.MovieName as movie,CAST(A.ShowDateTime as showDate)" +
         "(select sum(TicketPrice) from ccmsfdb2.HallApi.TicketTransaction where \n" +
         "CAST(ShowDateTime as date)=CAST(A.ShowDateTime as Date) AND\n" +
         " MovieName=A.MovieName and TheaterName=A.TheaterName and TicketStatusValue=1) as collection\n" +
         "from CCMSFDB2.HallApi.TicketTransaction A where A.MovieName='Sanju'  \n" +
         "and A.TheaterName='QFX Jai Nepal' \n" +
         "group by CAST(A.ShowDateTime as date),A.TheaterName,A.MovieName,CAST(A.ShowDateTime as Date)   order by showDate DESC")
    List<MovieCollectionAccordingToTheaaterDto> getMovieCollectionAccordingToTheater();\

В приведенном выше запросе я попытался преобразовать showdatetime как дату и суммировать общий сбор по дате, но с приведением не поддерживается в hql, и я не хочу использовать собственный запрос.

1 Ответ

0 голосов
/ 27 мая 2020

CAST поддерживается в HQL при условии, что базовая база данных поддерживает его.

Попробуйте использовать полное имя класса для Date (java.util.Date) внутри выражения @Query.

См .:
1. Выражения HQL

...