MySQL DATE_FORMAT() 用于以不同的格式显示日期/时间数据
DATE_FORMAT(date,format)
参数 | 说明 |
---|---|
date | 合法的日期 |
format | 日期/时间的输出格式 |
format 参数可使用的元字符有
元字符 | 说明 |
---|---|
%a | 缩写星期名 |
%b | 缩写月名 |
%c | 月,数值 |
%D | 带有英文前缀的月中的天 |
%d | 月的天,数值 ( 00-31 ) |
%e | 月的天,数值 ( 0-31 ) |
%f | 微秒 |
%H | 小时 ( 00-23 ) |
%h | 小时 ( 01-12 ) |
%I | 小时 ( 01-12 ) |
%i | 分钟,数值 ( 00-59 ) |
%j | 年的天 ( 001-366 ) |
%k | 小时 ( 0-23 ) |
%l | 小时 ( 1-12 ) |
%M | 月名 |
%m | 月,数值 ( 00-12 ) |
%p | AM 或 PM |
%r | 时间,12-小时 ( hh:mm:ss AM 或 PM ) |
%S | 秒 ( 00-59 ) |
%s | 秒 ( 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 位 |
范例
我们先使用 NOW() 函数获取当前的日期时间
然后使用 DATE_FORMAT() 将日期时间格式化为不同的数据
1、 %b%d%Y%h:%i%p;
SELECT DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p');
运行结果如下
mysql> SELECT DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p');
+----------------------------------------+
| DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p') |
+----------------------------------------+
| May 18 2017 08:49 AM |
+----------------------------------------+
2、 %m-%d-%Y;
SELECT DATE_FORMAT(NOW(),'%m-%d-%Y');
运行结果如下
mysql> SELECT DATE_FORMAT(NOW(),'%m-%d-%Y');
+-------------------------------+
| DATE_FORMAT(NOW(),'%m-%d-%Y') |
+-------------------------------+
| 05-18-2017 |
+-------------------------------+
3、 %d%b%y;
SELECT DATE_FORMAT(NOW(),'%d %b %y');
运行结果如下
mysql> SELECT DATE_FORMAT(NOW(),'%d %b %y');
+-------------------------------+
| DATE_FORMAT(NOW(),'%d %b %y') |
+-------------------------------+
| 18 May 17 |
+-------------------------------+
4、 '%d%b%Y%T:%f';
SELECT DATE_FORMAT(NOW(),'%d %b %Y %T:%f');
显示结果如下
mysql> SELECT DATE_FORMAT(NOW(),'%d %b %Y %T:%f');
+-------------------------------------+
| DATE_FORMAT(NOW(),'%d %b %Y %T:%f') |
+-------------------------------------+
| 18 May 2017 08:54:56:000000 |
+-------------------------------------+