小编cch*_*ana的帖子

获取两周的数据,但按 7 天的时间段分组

我希望运行一个查询来收集过去 14 天的结果数量,这很容易实现,如下所示:

SELECT COUNT(id) 
FROM table_name
Run Code Online (Sandbox Code Playgroud)

然后我想做的是将结果分组,以便我可以显示本周和前一周。使用WEEK()MySQL 中的选项可以让我获得前两周的数据,但按周分组可以返回 2 或 3 个结果,具体取决于结果属于一年中的哪一周:

例如:

SELECT WEEK(date_logged) as week, COUNT(id) as rows 
FROM table_name
WHERE date_logged > DATE_SUB(NOW(), INTERVAL 14 DAY) 
GROUP BY WEEK(date_logged)
Run Code Online (Sandbox Code Playgroud)

产生:

week 38: 10 result
week 39: 20 results
week 40: 3 results
Run Code Online (Sandbox Code Playgroud)

而不是:

this week: 13 results (10 from week 38 and half of week 39)
previous week: 20 results (half of week 39 and all of week 40)
Run Code Online (Sandbox Code Playgroud)

希望该数据集说明了我所追求的。

如果可能的话,我想避免在 aselect上做一个 …

mysql

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

mysql ×1