Java 使用QueryDSL和PostgreSQL数据库与GroupBy进行汇总
我使用QueryDSL在Java8中形成查询。数据库是PostgreSQL 对于其中一个功能,我需要在PostgreSQL中使用GroupBy的汇总功能,但我无法使用QueryDSL方法进行同样的操作。我对QueryDSL也很陌生 目前,我的查询生成器代码就是这样的Java 使用QueryDSL和PostgreSQL数据库与GroupBy进行汇总,java,sql,postgresql,jpa,querydsl,Java,Sql,Postgresql,Jpa,Querydsl,我使用QueryDSL在Java8中形成查询。数据库是PostgreSQL 对于其中一个功能,我需要在PostgreSQL中使用GroupBy的汇总功能,但我无法使用QueryDSL方法进行同样的操作。我对QueryDSL也很陌生 目前,我的查询生成器代码就是这样的 JPAQuery query=repository.getQueryDSL().createQuery(QEntity.entity).where(finalPredicate) .groupBy(groupByFields.toA
JPAQuery query=repository.getQueryDSL().createQuery(QEntity.entity).where(finalPredicate)
.groupBy(groupByFields.toArray(新表达式[0]))
.orderBy(orderSpecifierArray)
.限制(页面大小);
//获取结果
query.select(alarmProjectionFactory).fetch()
我想在上面的.groupBy方法中包括ROLLUP
在最后一个查询中,我想要如下内容:
按汇总分组(字段1、字段2)
而不是:
按字段1、字段2分组。
请建议是否可以使用QueryDSL在代码中执行以及所需的更改。即使QueryDSL可以执行,我怀疑JPA是否能够处理这一问题。我对不使用JPAQuery感到满意。有办法吗?即使QueryDSL可以做到,我怀疑JPA是否能够处理这个问题。我对不使用JPAQuery很满意。附近有路吗?