Как запросить sql для объекта в таблице с одним подобъектом на основе поля?

0

Сейчас у меня есть:

Получение List<Town> со всеми окрестностями и т. Д.:

(Town) em.createQuery(from Town towns"
        + " left join fetch towns.neighborhoods neighborhood"
        + " left join fetch neighborhood.population population"
        + " left join fetch population.age age"
        + " where age.value = :ageValue")
       .setParameter("ageValue", ageValue)

Я хочу получить List<Town> только с одним соседним окружением, которое является первым в neighborhood.creationDate.

Как я могу это сделать?

Я не хочу получать их все и удалять.

Спасибо.

Теги:
hibernate
jpa
entitymanager

1 ответ

0

Я предлагаю добавить подзапрос в clausule, что-то вроде этого:

where age.value = :ageValue 
    AND neighborhood.creationDate = 
         (Select max(nh.creationDate) From Neighborhood nh 
               where nh.townsId = towns.townsId)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню