【问题标题】:How to alter the sum value in knex如何更改 knex 中的总和值
【发布时间】:2018-10-26 09:19:29
【问题描述】:

如何将 Knex 中的结果值相乘

   db.select().table('sales')
    .whereBetween('date-s', [req.params.startDate,req.params.endDate])
    .sum({totalSales:"sales-after-returns"})
    .avg({averageSales:"sales-after-returns"})
    .sum({sixtyPercentOfTotalSale:"sales-after-returns"} * 0.6)
    .then(result => res.json(result))
    }) 

前两行工作正常,我没有得到第三个值 sixtyPercentOfTotalSale,如何更改列的总和?

这是我在控制台中遇到的错误

未处理的拒绝类型错误:value.toLowerCase 不是函数

【问题讨论】:

    标签: javascript sql node.js knex.js


    【解决方案1】:

    不确定这个问题,但这可能会奏效-只需使用 knex.raw-

    db.select().table('sales')
        .whereBetween('date-s', [req.params.startDate,req.params.endDate])
        .columns([
          knex.raw('sum(sales-after-returns) as totalSales'),
          knex.raw('avg(sales-after-returns) as averageSales'),
          knex.raw('sum(sales-after-returns * 0.6) as sixtyPercentOfTotalSale'),
         ])
        .then(result => res.json(result))
        }) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-02
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多