Другим вариантом будет использование аннотации @Formula, которая в основном эквивалентна созданию вложенного выбора, чтобы вы могли рассчитывать.
В свойстве / элементе данных вашего объекта БД (который вы должны создать) добавьте аннотацию к получателю, например:
@ Формула ("(ВЫБЕРИТЕ СЧЕТ (TABLE_NAME.ID) ИЗ ТАБЛИЦЫ ГДЕ все, что ...)")
public long getNewProperty {
вернуть newProperty;
}
Затем нацельтесь на члена, чтобы получить значения вашего счета ...
Примечание: имейте в виду, что при указании sql в аннотации формулы необходимо указывать имена полей непосредственно при обращении к текущей таблице объектов (this), поскольку hibernate сам с этим справляется. Так что в вашем предложении WHERE просто используйте ID или что-то само по себе при обращении к текущей таблице объектов, которая, как я подозреваю, является UserGroup.
Мне нужно было установщик для моего нового свойства, чтобы hibernate работал и не давал компилятору жалоб.
Могут быть и другие умные способы использования @Formula, но я довольно новичок в этом, и, похоже, не очень много документации по этому вопросу ...
Если вы никогда раньше не использовали вложенные SELECTS, возможно, вам стоит сначала пересоздать в sql - это мне помогло.
Надеюсь, это поможет