Я использую QueryDSL для формирования запросов в Java8. База данных PostgreSQL.
Для одной из функций мне нужно использовать функцию ROLLUP с GroupBy в PostgreSQL, но я не могу сделать то же самое с помощью методов QueryDSL. Я также очень новичок в QueryDSL.
В настоящее время так выглядит мой код построителя запросов.
JPAQuery query = repository.getQueryDSL().createQuery(QEntity.entity).where(finalPredicate)
.groupBy(groupByFields.toArray(new Expression[0]))
.orderBy(orderSpecifierArray)
.limit(pageSize);
// для получения результатов
query.select(alarmProjectionFactory).fetch()
Я хочу включить ROLLUP с помощью вышеуказанного метода .groupBy.
В окончательном запросе я хочу что-то вроде это:
GROUP BY Rollup(field1, field2)
вместо:
GROUP BY field1, field2.
Пожалуйста, предложите, если это возможно сделать в коде, используя QueryDSL и необходимые изменения.