CASE WHEN не работает с предложением WHERE в Querydsl - PullRequest
0 голосов
/ 16 января 2019

Это мой предикат:

new BooleanBuilder(
   new CaseBuilder().when(expression.hour().eq(time.getHour()))
   .then((Predicate) expression.minute().gt(time.getMinute()))
   .otherwise(expression.hour().gt(time.getHour()))
)

Но это не работает. Я получаю следующее исключение:

org.springframework.dao.InvalidDataAccessApiUsageException:
org.hibernate.hql.internal.ast.QuerySyntaxException: 
unexpected AST node: case near line 3, column 146

Я думаю, что "CASE WHEN" не разрешен внутри предложения WHERE в hibernate? Кто-нибудь может мне помочь, пожалуйста! Я пытаюсь фильтровать по времени из моего поля datetime. Я искал везде, но я не смог найти полезного источника: (

Я использую Querydsl с JPA.

...