我正在构建一个使用Bookshelf访问MySQL数据库的程序。我试图做的其中一件事是按两列分组数据。但我无法弄清楚如何做到这一点。
我尝试使用knex groupByRaw和lodash _.groupBy,但我不认为我在正确的地方使用它们。
以下是这种情况:
表格
我将计时器存储在一个包含以下列的表中:id,userID,projectID,startTime,stopTime。
我想为给定日历周中的每个用户选择累计时间。
我的猜测结果将是这样的:
SELECT SUM(TIMESTAMPDIFF(SECOND, startTime, endTime)), userID, YEARWEEK(startTime, 1), projectID
FROM time
GROUP BY userID, YEARWEEK(startTime, 1)
HAVING projectID = 1
答案 0 :(得分:0)
有点晚,但是为了记录:您可以连续多次调用Knex的groupBy
。所以:
.groupBy("userID")
.groupByRaw("YEARWEEK(startTime, 1)")