MySQL 按照时间查询

来源:互联网 发布:大平面铣削编程 编辑:程序博客网 时间:2024/06/05 19:05

第一种方法:

SELECT     DATE_FORMAT( column, "%Y-%m-%d %H" ) , COUNT( * ) FROM     tableGROUP BY        DATE_FORMAT( column, "%Y-%m-%d %H" ) 

注:
DATE_FORMAT(date,format)
根据format字符串格式化date值。下列修饰符可以被用在format字符串中:

    %M 月名字(January……December)     %W 星期名字(Sunday……Saturday)     %D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)     %Y 年, 数字, 4 位     %y 年, 数字, 2 位     %a 缩写的星期名字(Sun……Sat)     %d 月份中的天数, 数字(00……31)     %e 月份中的天数, 数字(0……31)     %m 月, 数字(01……12)     %c 月, 数字(1……12)     %b 缩写的月份名字(Jan……Dec)     %j 一年中的天数(001……366)     %H 小时(00……23)     %k 小时(0……23)     %h 小时(01……12)     %I 小时(01……12)     %l 小时(1……12)     %i 分钟, 数字(00……59)     %r 时间,12 小时(hh:mm:ss [AP]M)     %T 时间,24 小时(hh:mm:ss)     %S 秒(00……59)     %s 秒(00……59)     %p AM或PM     %w 一个星期中的天数(0=Sunday ……6=Saturday )     %U 星期(0……52), 这里星期天是星期的第一天     %u 星期(0……52), 这里星期一是星期的第一天     %% 一个文字“%”。

第二种方法:

select         count(1), date(column) from          rijielist     group by            date(column) 

MySQL 时间函数

WEEK(date) 返回date一年中的第几周YEAR(date) 返回date 年份HOUR(time) 返回date 小时MINUTE(time) 返回date 分钟MONTHNAME(date) 返回date 月份DATE(date)获取 日期 日期形式:y-m-d 

例如

    SELECT DATE(NOW())    输出:    2017-08-02 

第三种方法:

使用substring 函数

     substring(str, pos)      substring(str, pos, length) 
    select         count(1),SUBSTRING(column,1,10)     from          rijielist      group by           SUBSTRING(column,1,10) 

SUBSTRING(column,1,10) yyyy-mm-dd
SUBSTRING(column,1,7) yyyy-mm
SUBSTRING(column,1,4) yyyy
注意:
Mysql中substring 处理日期的时候 是从 1开始的

参考
[1]记录一个mysql按日期分组统计的查询
[2]MySql按周,按月,按日分组统计数据
[3]Mysql字符串截取函数SUBSTRING的用法说明

原创粉丝点击