HQL - найти сущность, где свойство х самое высокое - PullRequest
3 голосов
/ 25 июня 2010

Могут ли это делать запросы HQL?

"получить UserEntity, где свойство creationTimestamp является самым последним из всех UserEntities".

По сути, это запрос на возврат «нового пользователя» в нашей программе, где у каждого UserEntity есть поле, сопоставленное столбцу отметки времени в нашей базе данных.

Ответы [ 3 ]

7 голосов
/ 25 июня 2010

Запрос самого высокого creationTimestamp будет выглядеть так:

from UserEntity where creationTimestamp = max(creationTimestamp)

Если вы хотите вернуть только один экземпляр и игнорировать другие результаты, которые имеют такое же (самое высокое) значение для этого свойства, вы можете использоватьquery.uniqueResult().

См. Глава 14. HQL: Язык запросов Hibernate для дальнейшего ознакомления.

4 голосов
/ 25 июня 2010

HQL-запрос для вывода списка пользователей из самых новых:

from UserEntities
order by creationTimestamp desc

Используйте setMaxResults, чтобы ограничить набор результатов только одним пользователем.

0 голосов
/ 25 июня 2010

Вы смотрели на предложение HQL order-by?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...