CriteriaAPI. Как составить запрос

Есть sql-запрос

select
    o.subsection
from (select
        i.subsection, max(i.sortNum) as maxSortNum
      from
        section i
      group by
        i.subsection
      where
        i.type = ?
     ) o
order by
    o.maxSortNum

Пытаюсь его составить через Criteria: Создал класс-обертку:

    @Getter
    @AllArgsConstructor
    protected static class SectionWrapper {
        private final String subsection;
        private final Long maxSortNum;
    }

Инициализовал переменные, возможно не правильно.

CriteriaQuery<String> query = cb.createQuery(String.class);
Root<BaseSection> root = query.from(BaseSection.class);
        
Subquery<SectionWrapper> subQuery = query.subquery(SectionWrapper.class);
Root<BaseSection> subQueryRoot = subQuery.from(BaseSection.class);

Через construct пытался связать SectionWrapper с таблицей, не получается, idea-подсвечивает. Сам класс Subquery не имеет метода multiselect. Как быть, подскажите!


Ответы (0 шт):