提问者:小点点

使用MySql从数据库获取每周记录


我的数据库表如下所示

CREATE TABLE issues
(
    id                  uuid,
    status              int,
    created_at          TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
);

我想要得到所有的一周的时间,有多少任务是在星期一,星期二...星期五创建的。如有任何帮助,我们将不胜感激。


共2个答案

匿名用户

对于mysql dayname函数https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_dayname

select dayname(created_at),count(*)
from issues
group by dayname(created_at);

从你的问题中并不清楚你想要如何或是否按周计算

匿名用户

SELECT WEEK(created_at),WEEKDAY(created_at) as weekday,count(*) as weekly_count
FROM `issues`
WHERE WEEKDAY(created_at) > 1 AND WEEKDAY(created_at) < 6
GROUP BY WEEK(created_at)