MySQL DATE_FORMAT()函数使用了哪些不同的日期格式字符?
DATE_FORMAT()是MySQL提供的日期格式函数,可以让用户将日期格式化为不同的形式。该函数接受两个参数,第一个是待格式化的日期,第二个是日期格式字符串。在第二个参数中,用户可以使用不同的日期格式字符来表示不同的日期部分,如年、月、日、小时等。本文将详细介绍MySQL DATE_FORMAT()函数所支持的日期格式字符。
1. 年份格式字符
年份格式字符用于表示年份,支持以下两种格式:
%Y:四位数的年份,如2021。
%y:两位数的年份,如21。
示例:
SELECT DATE_FORMAT('2021-09-01', '%Y'); -- 输出:2021
SELECT DATE_FORMAT('2021-09-01', '%y'); -- 输出:21
2. 月份格式字符
月份格式字符用于表示月份,支持以下两种格式:
%m:带前导零的月份,如09。
%c:不带前导零的月份,如9。
示例:
SELECT DATE_FORMAT('2021-09-01', '%m'); -- 输出:09
SELECT DATE_FORMAT('2021-09-01', '%c'); -- 输出:9
3. 日格式字符
日格式字符用于表示日期中的日,支持以下两种格式:
%d:带前导零的日,如01。
%e:不带前导零的日,如1。
示例:
SELECT DATE_FORMAT('2021-09-01', '%d'); -- 输出:01
SELECT DATE_FORMAT('2021-09-01', '%e'); -- 输出:1
4. 小时格式字符
小时格式字符用于表示时间中的小时,支持以下两种格式:
%H:带前导零的小时,24小时制,如08、15。
%h:带前导零的小时,12小时制,如08、03。
示例:
SELECT DATE_FORMAT('2021-09-01 08:30:00', '%H'); -- 输出:08
SELECT DATE_FORMAT('2021-09-01 03:30:00', '%h'); -- 输出:03
5. 分钟格式字符
分钟格式字符用于表示时间中的分钟,支持以下两种格式:
%i:带前导零的分钟,如05、59。
示例:
SELECT DATE_FORMAT('2021-09-01 08:05:00', '%i'); -- 输出:05
6. 秒格式字符
秒格式字符用于表示时间中的秒,支持以下两种格式:
%s:带前导零的秒,如00、59。
示例:
SELECT DATE_FORMAT('2021-09-01 08:30:45', '%s'); -- 输出:45
7. 星期格式字符
星期格式字符用于表示日期中的星期几,支持以下两种格式:
%W:完整星期名称,如Wednesday。
%w:数字表示的星期几,0表示星期日,1表示星期一,以此类推。
示例:
SELECT DATE_FORMAT('2021-09-01', '%W'); -- 输出:Wednesday
SELECT DATE_FORMAT('2021-09-01', '%w'); -- 输出:3
8. 月份名称格式字符
月份名称格式字符用于表示月份的英文名称,支持以下三种格式:
%M:完整月份名称,如September。
%b:缩写月份名称,如Sep。
%mth:数字加上后缀th,如September变为9th。
示例:
SELECT DATE_FORMAT('2021-09-01', '%M'); -- 输出:September
SELECT DATE_FORMAT('2021-09-01', '%b'); -- 输出:Sep
SELECT DATE_FORMAT('2021-09-01', '%mth'); -- 输出:9th
9. 上午/下午格式字符
上午/下午格式字符用于表示时间是上午还是下午,支持以下两种格式:
%p:大写的AM或PM。
%r:时间,包括上午/下午,并且使用12小时制。
示例:
SELECT DATE_FORMAT('2021-09-01 08:30:00', '%p'); -- 输出:AM
SELECT DATE_FORMAT('2021-09-01 15:30:00', '%r'); -- 输出:03:30:00 PM
总结
本文介绍了MySQL DATE_FORMAT()函数所支持的日期格式字符,包括年份格式字符、月份格式字符、日格式字符、小时格式字符、分钟格式字符、秒格式字符、星期格式字符、月份名称格式字符、上午/下午格式字符。在实际使用中,用户可以根据需求自由组合这些格式字符来得到所需的日期格式。