【问题标题】:How to get simple Sum with JOOQ? [duplicate]如何使用 JOOQ 获得简单的 Sum? [复制]
【发布时间】:2013-04-05 00:48:39
【问题描述】:

使用 JOOQ 获得简单 sum 的正确方法是什么?

SELECT sum(PERSON.AGE) FROM PERSON;

我在想这样的事情:

BigDecimal sum = factory.select(sum(PERSON.AGE)).from(PERSON).fetch???;

?

【问题讨论】:

    标签: java sql sum jooq


    【解决方案1】:
    Record1<BigDecimal> record = factory.select(sum(PERSON.AGE)).from(PERSON).fetchOne();
    BigDecimal decimal = record.getValue(record.field1());
    

    如果没有要求和的记录,则小数将为空。如果您尝试以以下结尾,这种情况将导致错误:

    .fetchOneInto(Integer.class)
    

    【讨论】:

      【解决方案2】:

      这是你应该做的:

      // Static imports are assumed to be present:
      import static org.jooq.impl.DSL.*;
      

      然后使用:

      BigDecimal sumValue = factory.select(sum(PERSON.AGE)).from(PERSON).fetch();
      

      【讨论】:

        【解决方案3】:

        试试:

        BigDecimal sum = factory.select(sum(PERSON.AGE)).from(PERSON).fetchOne();
        

        【讨论】:

          【解决方案4】:
          BigDecimal sum = (BigDecimal) create.select( sum(PERSON.AGE).as("PERSON_AGE_SUM")) .from(PERSON);
          

          试试这个..

          【讨论】:

            【解决方案5】:
            BigDecimal sum = factory.select(PERSON.AGE.sum()).from(PERSON).fetchAnyInto(BigDecimal.class);
            

            【讨论】:

              猜你喜欢
              • 2021-12-14
              • 2021-02-20
              • 1970-01-01
              • 2021-01-28
              • 2013-03-29
              • 2015-03-08
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多