MySQL 按照时间查询

第一种方法:
SELECT 
    DATE_FORMAT( column, "%Y-%m-%d %H" ) , COUNT( * ) 
FROM 
    table
GROUP 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的用法说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值