Java jOOQ在PostgreSQL中选择不同的数组聚合

Java jOOQ在PostgreSQL中选择不同的数组聚合,java,sql,postgresql,jooq,Java,Sql,Postgresql,Jooq,我正试图让jOOQ发出这种信号(运气不好): 我最终使用了一个普通的SQL字段 有没有一种方法是我所缺少的 如果不是,那么在字段中添加一个可以与任何聚合函数一起使用的.distinct()方法是否有意义?或者是一个创建字段而不是SelectStep的DSL.distinct(Field),不确定这是否有区别 目前,这似乎是通过为每个聚合创建单独的DSL方法来实现的:countDistinct,groupConcatDistinct,min/max/sum/avgDistinct,等等 谢谢从jO

我正试图让jOOQ发出这种信号(运气不好):

我最终使用了一个普通的SQL字段

有没有一种方法是我所缺少的

如果不是,那么在
字段
中添加一个可以与任何聚合函数一起使用的
.distinct()
方法是否有意义?或者是一个创建字段而不是SelectStep的
DSL.distinct(Field)
,不确定这是否有区别

目前,这似乎是通过为每个聚合创建单独的DSL方法来实现的:
countDistinct
groupConcatDistinct
min/max/sum/avgDistinct
,等等


谢谢

从jOOQ 3.10开始将提供一个
DSL.arrayagdistinc()
函数:

在此之前,只需将以下内容用作解决方法:

公共静态字段ArrayAgDistinct(字段myField){
返回DSL.field(“array_agg(distinct{0})”,myField.getArrayDataType(),myField);
}
SELECT array_agg(DISTINCT my_field) FROM ...