SELECT DATE(date_column), COUNT(*)
FROM jobs
where created_on >= '02/01/2018 00:00:00' and created_on < '03/01/2018 00:00:00'
GROUP BY DATE(date_column);
要为特定用户获取,只需在上面的查询中附加一个where子句,如下所示:
SELECT DATE(date_column), COUNT(*)
FROM jobs
where created_on >= '02/01/2018 00:00:00' and created_on < '03/01/2018 00:00:00' and username = 'CTC01'
GROUP BY DATE(date_column);
编辑由于日期列是varchar,因此必须首先将其转换为datetime。因此,请运行以下查询:
SELECT DATE(DATE_FORMAT(STR_TO_DATE(date_column, '%c/%e/%Y %H:%i'), '%Y-%m-%d %H:%m:%s')) as Date, COUNT(*)
FROM jobs
where created_on >= '02/01/2018 00:00:00' and created_on < '03/01/2018 00:00:00'
GROUP BY DATE(DATE_FORMAT(STR_TO_DATE(date_column, '%c/%e/%Y %H:%i'), '%Y-%m-%d %H:%m:%s'));
SELECT DATE(STR_TO_DATE(date_column, "%m/%d/%Y %r")), COUNT(*)
FROM table
GROUP BY DATE(STR_TO_DATE(date_column, "%m/%d/%Y %r"));
使用date函数,将datetime表达式转换为日期。然后使用 GROUP BY 让伯爵知道日期。 在这种情况下,您需要获取特定用户(例如:ctc01)和datewise的数据。您可以执行以下操作:
SELECT DATE(STR_TO_DATE(date_column, "%m/%d/%Y %r")), COUNT(*)
FROM table
WHERE username = 'CTC01'
GROUP BY DATE(STR_TO_DATE(date_column, "%m/%d/%Y %r"));
2条答案
按热度按时间k5hmc34c1#
我知道你的日期格式是
'm/d/Y H:i:s'
. 所以,为了得到一个月内每天的总数,你必须把这个月最少的时间和那个月最高的时间做一个比较。因此,2018年2月的查询将是:要为特定用户获取,只需在上面的查询中附加一个where子句,如下所示:
编辑由于日期列是varchar,因此必须首先将其转换为datetime。因此,请运行以下查询:
jogvjijk2#
自从手术后
date_column
是VARCHAR
类型。我们使用str\u to\u date函数:使用date函数,将datetime表达式转换为日期。然后使用
GROUP BY
让伯爵知道日期。在这种情况下,您需要获取特定用户(例如:ctc01)和datewise的数据。您可以执行以下操作: