JOOQ选择与组不同的计数

时间:2018-03-23 12:18:25

标签: java sql jooq

我试图通过select来计算一组记录返回的记录数。

此stackoverflow问题很好地总结了不同的方法:

Count number of records returned by group by

我想使用解决方案:

Record record = jooq.select( TABLE.COLUMN.count() ).from( TABLE).fetchOne();

return record.into( Long.class );

如何将其转换为JOOQ查询?

这是我在JOOQ中进行简单计数查询的方法:

$scope.data = {};
$scope.data.records = null;

是否可以在JOOQ语法中表达“DISTINCT COUNT(*)OVER()AS TotalRecords”?

詹姆斯

1 个答案:

答案 0 :(得分:3)

写下这个:

// Assuming this static import
import static org.jooq.impl.DSL.*;

int totalRecords =
jooq.selectDistinct(count().over().as("TotalRecords"))
    .from(TABLE)
    .groupBy(TABLE.COLUMN)
    .fetchOne(int.class);

您缺少的方法是: