Hibernate: создание списка уникальных строк, а не объектов - PullRequest
3 голосов
/ 26 марта 2012

Я сохраняю и извлекаю Java-объекты в БД, используя Hibernate.

Мне нужно создать (для целей создания «раскрывающихся страниц» / «поисков») список уникальныхстроки.

Примечание: я действительно не хочу получать обратно сущности здесь как таковые - я хочу запустить эквивалент SQL 'SELECT DISCTINCT (column) FROM table;'и получить список строк.

Существует ли для этого стандартная идиома Hibernate - или мне использовать другой механизм?

1 Ответ

9 голосов
/ 26 марта 2012

Запрос Hibernate поддерживает этот запрос, вы можете использовать hql или собственный запрос для получения String.

Query query = session.createQuery("select distinct user.firstname from User as user");

или

Query query = session.createNativeQuery("select distinct user.firstname from User user");

List<String> list = (List<String>) query.list();

Ссылка: Запрос Hibernate

...