Возможен ли Select EXISTS () в JPQL?

Я пытаюсь запустить запрос, который проверяет, истинны ли некоторые условия, и возвращает простой логический результат в качестве вывода. Что делает его немного сложным, так это то, что одним из условий является проверка того, не возвращаются ли результаты по набору критериев.

В настоящее время я использую JPA-2.0 с гибернацией в качестве моего провайдера, поддерживаемого MySQL. Я получил пример запроса, который отлично работает в MySQL, но при попытке запустить его в JPQL он терпит неудачу. Запрос MySQL выглядит примерно так:

Select exists(Select statement with criteria) 
  or not exists(Select statement with criteria);

Я также получил тот же результат, используя CASE, но поскольку JPQL не поддерживает этот оператор.

В любом случае, когда я пытаюсь использовать аналогичный запрос в JPQL, я получаю сообщение об ошибке :

"неожиданный конец поддерева"

, что, как я понимаю, означает, что в запросе чего-то не хватает. Кто-нибудь знает, как это исправить?

18
задан Danubian Sailor 17 December 2013 в 10:24
поделиться