Эта функция не поддерживается в Hibernate.
Но существует обходной путь.
Создайте представление в базе данных, а затем используйте HQL для получения результата через Java.
создать или заменить принудительное представление VW_ENTITY_VALUE (entityValue)
как
выберите случай, когда a.entityId равен нулю, а затем «недействителен»
(выберите b.entityName из tblName b, где b.entityId = a.entityId)
конец от tblEntity a;
Из документации по HQL:
http://docs.jboss.org/hibernate/core/3.3/reference/en/html/queryhql.html#queryhql-subqueries
14,13. Подзапросы
Для баз данных, поддерживающих подвыборы, Hibernate поддерживает подзапросы в запросах. Подзапрос должен быть заключен в круглые скобки (часто с помощью вызова агрегатной функции SQL). Даже коррелированные подзапросы (подзапросы, которые ссылаются на псевдоним во внешнем запросе) разрешены.
от Кошки как Толстяка
где fatcat.weight> (
выберите значение avg (cat.weight) из кошки DomesticCat
)
от DomesticCat как кошка
где cat.name = некоторые (
выберите name.nickName из Name в качестве имени
)
от кота как кот
где не существует (
от кота как помощник где mate.mate = кот
)
от DomesticCat как кошка
где cat.name не в (
выберите name.nickName из Name в качестве имени
)
выберите cat.id, (выберите max (kit.weight) из набора cat.kitten)
от кота как кот
Обратите внимание, что подзапросы HQL могут появляться только в предложениях select или where.