Мне нужно сделать что-то вроде
select city from users group by city;
Как это сделать с помощью Spring JPA? Может быть, технические характеристики? Как насчет чего-то вроде select в соответствии с переданным параметром?
List<Object> getValuesGroupedBy(String columnName);
Я пытался использовать спецификацию, вы можете сделать только
query.groupBy(root.get(column));
, и это действительно группирует по указанному столбцу.
Но когда вы пытаетесь сделать выбор,
query.select(root.get(column)).groupBy(root.get(column))
Это делает нереальным.
Или я также пытался использовать проекции. Я говорю хорошо, мне нужен город
interface OnlyCity {
String getCity();
}
Тогда мой JPA выглядит следующим образом:
List<OnlyCity> findAllBy();
И это выбирает только один столбец, что тоже нормально. Но как поместить туда спецификацию, чтобы я мог хотя бы выполнить операцию, описанную выше?