我正在将一个应用程序从php/mysql切换到express,并使用knex连接到mysql数据库。在我的一个查询中,我使用了这样的语句(为了简洁起见,我缩短了它)
SELECT ROUND(AVG(Q1),2) AS Q1 FROM reviews WHERE id=? AND active='1'
如果我使用knex.raw,我可以使用round,但我想知道是否有一种方法可以使用query builder编写这个。使用querybuilder使得处理视图端的输出比导航原始查询返回的对象容易得多。
这是我到目前为止在knex的资料。
let id = req.params.id;
knex('reviews')
//Can you wrap a ROUND around the average? Or do a Round at all?
.avg('Q1 as Q1')
.where('id', '=', id)
非常感谢!
1条答案
按热度按时间fkvaft9z1#
你可以用
raw
内部select
. 在这种情况下:在处理原始语句时,请查看此处的文档以获取更多示例和良好实践。