mysql⽇期group_MySql使⽤GROUPBY按照⽇期分组统计SELECT DATE_FORMAT(
时间字段名,
'%Y-%m-%d'
),count(*) FROM table  where 条件 GROUP BY  DATE_FORMAT(
时间字段名,
'%Y-%m-%d'
)
GROUP BY 语句可以根据⼀个或多个列对结果集进⾏分组。结合count()可以进⾏数据统计。
注: 在MySql中因为不⽀持从convert()函数,所以需要改⽤DATE_FORMAT(date,format)替代
在使⽤DATE_FORMAT(date,format)时,如果时间格式为2015-11-17
17:11:282(及最后的秒为三位数)得到的结果会为null 会导致统计结果出错
groupby分组
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), 这⾥星期⼀是星期的第⼀天
%% ⼀个⽂字“%”。
所有的其他字符不做解释被复制到结果中。
mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');
-> 'Saturday October 1997'
mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');
-> '22:23:00'
mysql> select DATE_FORMAT('1997-10-04 22:23:00',
'%D %y %a %d %m %b %j');
-> '4th 97 Sat 04 10 Oct 277'
mysql> select DATE_FORMAT('1997-10-04 22:23:00',
'%H %k %I %r %T %S %w');
-> '22 22 10 10:23:00 PM 22:23:00 00 6'
MySQL3.23中,在格式修饰符字符前需要%。在MySQL更早的版本中,%是可选的。分享到:
2016-02-17 11:06
浏览 1782
评论

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。