Как упорядочить HQL-запрос по свойству объекта в коллекции? - PullRequest
4 голосов
/ 19 января 2012

Допустим, у меня есть Автомобиль с радио, и у радио есть связь «один ко многим» с Баттоном. Что я хочу, так это уникальные названия всех кнопок в автомобилях Ford, отсортированные по названию кнопки Учитывая то, как устроены наши отношения, я не могу понять, как это сделать. Что-то вроде:

select distinct elements(c.radio.buttons)
from Car c 
where c.make = 'Ford'
order by c.radio.buttons.name

Последняя часть, конечно, неверна. Я собираюсь разбить эти данные на страницы, поэтому я пытаюсь сделать это целиком в запросе.

Ответ может быть связан с получением соединения, но пока мне не повезло. Спасибо!

1 Ответ

6 голосов
/ 19 января 2012

HQL будет

select distinct button
from Car c join c.radio.buttons button
where c.make = 'Ford'
order by button.name
...