【问题标题】:JOOQ select count distinct from groupJOOQ 选择计数不同于组
【发布时间】:2018-09-02 02:53:52
【问题描述】:

我正在尝试通过选择来计算一组返回的记录数。

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

Count number of records returned by group by

我想使用解决方案:

SELECT DISTINCT COUNT(*) OVER () AS TotalRecords
FROM table
GROUP BY column

如何将其转换为 JOOQ 查询?

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

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

return record.into( Long.class );

是否可以用 JOOQ 语法表示“DISTINCT COUNT(*) OVER () AS TotalRecords”?

詹姆斯

【问题讨论】:

    标签: java sql jooq


    【解决方案1】:

    这样写:

    // Assuming this static import
    import static org.jooq.impl.DSL.*;
    
    int totalRecords =
    jooq.selectDistinct(count().over().as("TotalRecords"))
        .from(TABLE)
        .groupBy(TABLE.COLUMN)
        .fetchOneInto(int.class);
    

    您缺少的方法是:

    【讨论】:

      猜你喜欢
      • 2020-11-27
      • 1970-01-01
      • 1970-01-01
      • 2018-01-27
      • 2013-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-20
      相关资源
      最近更新 更多