使用时间戳字段按天分组

时间:2018-06-11 11:57:13

标签: mysql

我的表架构如下所示:

function f(): boolean {
    return false;
}

if ( f ) {
    performSomeAction();
} 

我希望计算每天修改的名称和分组数量,此时我只能按整个日期分组,包括时间戳,例如:

if( f() ){
    performSomeAction();
}

提前致谢。

3 个答案:

答案 0 :(得分:3)

使用MySQL DATE()函数从时间戳中提取日期:

SELECT name, count(*) FROM mytable GROUP BY DATE(mytable.modified);
  

DATE()函数从日期或日期时间表达式中提取日期值。

答案 1 :(得分:3)

您可以使用此查询或其版本 SELECT DATE_FORMAT(已修改,"%Y-%m-%d")为date_string,count(1)FROM mytable group by date_string;

答案 2 :(得分:2)

根据你白天的意思,你有几个选择; Here's your cheat sheet.

DAYNAME(date)表示星期几(周一至周日)

DAYOFMONTH(date)表示该月的某一天(1-31)

DAYOFWEEK(date)表示星期几(1-7)

DAYOFYEAR(date)一年中的某一天(1-365)

编辑:

如果您想在整个日期(而不是某一天)进行分组,请忽略您可以使用的时间

DATE_FORMAT(date, format)

格式说明符的完整列表可以在上面的链接中找到,但您可能需要的是:

Date_FORMAT(date, '%Y-%m-%d')

这会将日期格式化为“YYYY-MM-DD”,您可以将其分组。