首页 > 编程笔记 > MySQL笔记

MySQL DATE_FORMAT()函数的用法

MySQL 中的 DATE_FORMAT() 函数用于将日期或日期时间值格式化为字符串。它允许你自定义日期和时间的显示格式。

DATE_FORMAT() 函数的基本语法如下:
DATE_FORMAT(date, format)
其中 date 是一个有效的日期或日期时间表达式,format 是一个字符串,指定了输出格式。

format 参数可以使用多种格式说明符,常用的如下表所示。

表:DATE_FORMAT时间日期格式
说明符 说 明
%a 工作日的缩写名称(Sun...Sat)
%b 月份的缩写名称(Jan...Dec)
%c 月份,数字形式(0...12)
%D 以英文后缀表示月中的几号(1st, 2nd...)
%d 该月日期,数字形式(00...31)
%e 该月日期,数字形式(0...31)
%f 微秒(000000...999999)
%H 以 2 位数表示 24 小时(00...23)
%h,%I 以 2 位数表示 12 小时(01...12)
%i 分钟,数字形式(00...59)
%j 一年中的天数(001...366)
%k 以 24 (0...23)小时表示时间
%l 以 12 (1...12)小时表示时间
%M 月份名称(January...December)
%m 月份,数字形式(00... 12)
%p 上午(AM)或下午(PM)
%r 时间,12 小时制(小时 hh: 分钟 mm: 秒数 ss 后加 AM 或 PM)
%S,%s 以 2 位数形式表示秒(00...59)
%T 时间,24 小时制(小时 hh: 分钟 mm: 秒数 ss)
%U 周(00...53),其中周日为每周的第一天
%u 周(00...53),其中周一为每周的第一天
%V 周(01...53),其中周日为每周的第一天;和 %X 同时使用
%v 周(01...53),其中周一为每周的第一天;和 %x 同时使用
%W 工作日名称(周日…周六)
%w 一周中的每日(0=周日...6=周六)
%X 该周的年份,其中周日为每周的第一天;数字形式,4 位数;和 %V 同时使用
%x 该周的年份,其中周一为每周的第一天;数字形式,4 位数;和 %v 同时使用
%Y 4 位数形式表示年份
%y 2 位数形式表示年份
%% 标识符 %

【实例】使用 DATE_FORMAT() 函数格式化输出日期和时间值,输入语句如下:
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y') AS col1, DATE_FORMAT('1997-10-04 22:23:00','%D %y %a %d %m %b %j') AS col2;
+-----------------------+--------------------------+
| col1               | col2                  |
+-----------------------+--------------------------+
| Saturday October 1997 | 4th 97 Sat 04 10 Oct 277 |
+-----------------------+--------------------------+

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s') AS col3, DATE_FORMAT('1999-01-01','%X %V') AS col4;
+-----------------------+--------------------------+
| col3               | col4                  |
+-----------------------+--------------------------+
| 22:23:00            | 1998 52               |
+-----------------------+--------------------------+
可以看到“1997-10-04 22:23:00”分别按照不同参数转换成了不同格式的日期值和时间值。

相关文章