目录 一、前言 二、DATE_FORMAT()函数 三、示例 1 %Y/%m/%d 2 %Y-%m-%d 3 %e/%c/%Y 4 %d/%m/%Y %H:%i 5 %b %d %Y %h:%i %p 6 %Y-%m-%d %T:%f 7 %W %D %M %Y %T 总结 一、前言 最近要做一些报表,其中有一个创建报表的时
目录
- 一、前言
- 二、DATE_FORMAT()函数
- 三、示例
- 1> %Y/%m/%d
- 2> %Y-%m-%d
- 3> %e/%c/%Y
- 4> %d/%m/%Y %H:%i
- 5> %b %d %Y %h:%i %p
- 6> %Y-%m-%d %T:%f
- 7> %W %D %M %Y %T
- 总结
一、前言
最近要做一些报表,其中有一个创建报表的时间,需要以固定的格式输出;那么在SQL层面如何处理呢?
二、DATE_FORMAT()函数
要将日期值格式化为特定格式,可以使用DATE_FORMAT函数。 DATE_FORMAT函数的语法如下:
DATE_FORMAT(date,format);
DATE_FORMAT()函数中两个参数的意思:
- date:要格式化的有效日期值;
- format:由预定义的说明符组成的格式字符串,每个说明符前面都有一个百分比字符(%)。有关预定义说明符的列表,请参见下表。
表格 – 可用于构建日期格式字符串的说明符及其含义:
%a
%b
%c
%D
%d
1
个数字(小于10
),那么一个月之中的第几天表示为加前导加0
, 如:00, 01,02, …31%e
%f
000000..999999
%H
0
,例如:00,01…23%h
%I
%h
相同%i
%j
0
,例如,001,002,… 366%k
%l
%M
%m
%p
AM
或PM
,取决于其他时间说明符%r
12
小时格式hh:mm:ss AM
或PM
%S
%s
%S
相同%T
hh:mm:ss
%U
%u
%V
%U
相同,它与%X
一起使用%v
%u
相同,它与%x
一起使用%W
%w
%X
%V
一起使用%x
%v
一起使用%Y
%y
%%
%
)字符添加到输出恕我直言,真多;这谁没事会全记下来;我们一般记几个常用的就可;
%Y/%m/%d
%Y-%m-%d
%e/%c/%Y
%d/%m/%Y %H:%i
%b %d %Y %h:%i %p
%Y-%m-%d %T:%f
%W %D %M %Y %T
三、示例
user表随便用一个自己的表替换即可,id为主键。now()为MySQL自带的获取当前时间的函数;
1> %Y/%m/%d
如果月份和日的数字小于10,则直接必须用0填充,显示两位数字;
select date_format(now(), '%Y/%m/%d') now_time ,id from user where id = 68;
2> %Y-%m-%d
select date_format(now(), '%Y-%m-%d') now_time ,id from user where id = 68;
3> %e/%c/%Y
如果月份和日的数字小于10,则直接不在用0填充,可以只显示一位;
select date_format(now(), '%e/%c/%Y') now_time ,id from user where id = 68;
4> %d/%m/%Y %H:%i
select date_format(now(), '%d/%m/%Y %H:%i') now_time ,id from user where id = 68;
5> %b %d %Y %h:%i %p
select date_format(now(), '%b %d %Y %h:%i %p') now_time ,id from user where id = 68;
6> %Y-%m-%d %T:%f
select date_format(now(), '%Y-%m-%d %T:%f') now_time ,id from user where id = 68;
7> %W %D %M %Y %T
select date_format(now(), '%W %D %M %Y %T') now_time ,id from user where id = 68;
总结
到此这篇关于MySQL中DATE_FORMAT()函数将Date转为字符串的文章就介绍到这了,更多相关MySQL将Date转字符串内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!