mysql - 如何在 MySQL 中使用 GROUP BY (date) 从一周中的给定日期开始

标签 mysql group-by

如果我有一个 MySQL 查询来按周汇总总数,例如:

select sum(keyword1), sum(keyword2), sum(keyword3), dateTime
from myTable
group by week(dateTime)
order by dateTime asc

我发现星期似乎从星期日开始。

可以改成星期一吗?

dateTime 列采用 MySQL 时间戳格式 2011-09-26 12:34:32。

最佳答案

您希望星期日属于前一周,因此从中删除一天

select sum(keyword1), sum(keyword2), sum(keyword3),  week(DATE_SUB(dateTime, INTERVAL 1 DAY)) my_week
from myTable
group by week(DATE_SUB(dateTime, INTERVAL 1 DAY))
order by my_week asc

关于mysql - 如何在 MySQL 中使用 GROUP BY (date) 从一周中的给定日期开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7555550/

相关文章:

php - 将 MySQL 查询存储在 MySQL 数据库中……坏主意?

r - 按组移动窗口计算不同

pandas - 新列中的组计数

mysql - mysql 中字符串列的 DISTINCT 子句

mysql - 在 mysql 上为 group by + SUM 查询建立索引

sql - 如何在 SQL Server 中按 YEAR-MM 对 DATE 字段进行分组?

c# - 如何在 Entity Framework 连接字符串中设置转换零日期时间

mysql - 无法在 MySQL 5.5.60 中设置数据类型 datetime(3)

mysql - has_and_belongs_to_many 权限过滤

php - 如何从 Javascript 执行外部 php?