MySQL时间格式化

时间:2022-09-05 15:25:04

 简介

在处理数据的时候,经常会在MySQL里面格式化时间进行统计。

DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。

MySQL时间格式化

用法

  1. select DATE_FORMAT(date,format) from table

date 参数是合法的日期。

format 规定日期/时间的输出格式,可以有下面的格式:

  1. %a  缩写星期名 
  2. %b  缩写月名 
  3. %c  月,数值 
  4. %D  带有英文前缀的月中的天 
  5. %d  月的天,数值(00-31) 
  6. %e  月的天,数值(0-31) 
  7. %f  微秒 
  8. %H  小时 (00-23) 
  9. %h  小时 (01-12) 
  10. %I  小时 (01-12) 
  11. %i  分钟,数值(00-59) 
  12. %j  年的天 (001-366) 
  13. %k  小时 (0-23) 
  14. %l  小时 (1-12) 
  15. %M  月名 
  16. %m  月,数值(00-12) 
  17. %p  AM 或 PM 
  18. %r  时间,12-小时(hh:mm:ss AM 或 PM) 
  19. %S  秒(00-59) 
  20. %s  秒(00-59) 
  21. %T  时间, 24-小时 (hh:mm:ss) 
  22. %U  周 (00-53) 星期日是一周的第一天 
  23. %u  周 (00-53) 星期一是一周的第一天 
  24. %V  周 (01-53) 星期日是一周的第一天,与 %X 使用 
  25. %v  周 (01-53) 星期一是一周的第一天,与 %x 使用 
  26. %W  星期名 
  27. %w  周的天 (0=星期日, 6=星期六) 
  28. %X  年,其中的星期日是周的第一天,4 位,与 %V 使用 
  29. %x  年,其中的星期一是周的第一天,4 位,与 %v 使用 
  30. %Y  年,4 位 
  31. %y  年,2 位 

例子

  1. select DATE_FORMAT(now(),"%Y-%m-%d %H:%i:%S"as now; 

输出

  1. mysql> select DATE_FORMAT(now(),"%Y-%m-%d %H:%i:%S"as now;   
  2. +---------------------+ 
  3. | now                 | 
  4. +---------------------+ 
  5. | 2020-11-02 22:06:40 | 
  6. +---------------------+ 
  7. 1 row in set (0.00 sec) 

按照日期统计

  1. select create_day , count(1) AS count from (select DATE_FORMAT(CREATE_TIME,"%Y-%m-%d")  AS create_day FROM TABLES) u  group by create_day; 

输出

  1. mysql> select create_day , count(1) AS count from (select DATE_FORMAT(CREATE_TIME,"%Y-%m-%d")  AS create_day FROM TABLES) u  group by create_day; 
  2. +------------+-------+ 
  3. | create_day | count | 
  4. +------------+-------+ 
  5. | 2020-10-26 |   323 | 
  6. +------------+-------+ 
  7. 1 row in set (0.00 sec) 

MySQL时间格式化

原文链接:https://www.toutiao.com/i6890529990786417165/