MySQL的DATE_FORMAT()函数中使用的不同时间格式字符是什么?
在MySQL中,DATE_FORMAT()函数被用来将日期类型转换成字符串。DATE_FORMAT()函数需要两个参数,第一个参数为日期,第二个参数用来指定返回的日期格式。
下面是一些常用的时间格式字符:
| 格式字符 | 含义 |
|---|---|
| %a | 缩写的星期几名字(如Sun) |
| %b | 缩写的月份名字(如Dec) |
| %c | 月份数字(0-12) |
| %D | 带有英文后缀的月份的日期(1st, 2nd, 3rd, 等等) |
| %d | 月份中的日期(00-31) |
| %e | 月份中的日期(0-31) |
| %f | 微秒 (000000 – 999999) |
| %H | 小时 (00-23) |
| %h | 小时 (01-12) |
| %I | 小时 (01-12) |
| %i | 分钟,(00-59) |
| %j | 年中的第几天(001-366) |
| %k | 小时(0-23) |
| %l | 小时(1-12) |
| %M | 月份名字 (January, February, March, April, May, June, July, August, September, October, November, December) |
| %m | 月份(00-12) |
| %p | 上午或下午(AM 或 PM) |
| %r | 时间(hh:mm:ss AM 或 PM) |
| %S | 秒(00-59) |
| %s | 秒(00-59) |
| %T | 时间(hh:mm:ss) |
| %U | 年中的第几个星期(00-53)周日被认为是星期的第一天 |
| %u | 年中的第几个星期(00-53)周一被认为是星期的第一天 |
| %V | ISO 周(00-53)一年中的第几周,根据 ISO 8601 规定,带星期四的周被认为是第一周 |
| %v | 年中的第几个星期(01-53)根据周的第一个星期决定 |
| %W | 完整的星期名字(Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday) |
| %w | 周日为0,周六为6 |
| %X | 带有世纪的年份 |
| %x | 不带世纪的年份 |
| %Y | 年份,四位数字 |
| %y | 年份,两位数字 |
下面是一些示例代码,用来演示DATE_FORMAT()函数中的不同时间格式字符的用法。
-- 返回日期和时间
SELECT DATE_FORMAT('2021-08-01 09:30:45', '%Y-%m-%d %H:%i:%s') AS datetime;
-- 输出: 2021-08-01 09:30:45
-- 返回年份和月份
SELECT DATE_FORMAT('2021-08-01', '%Y年%m月') AS year_month;
-- 输出: 2021年08月
-- 返回星期几
SELECT DATE_FORMAT('2021-08-01', '%W') AS week;
-- 输出: Sunday
-- 返回月份名字
SELECT DATE_FORMAT('2021-08-01', '%M') AS month_name;
-- 输出: August
-- 返回年份中的第几周
SELECT DATE_FORMAT('2021-08-01', '%U') AS week_in_year;
-- 输出: 30
阅读更多:MySQL 教程
结论
MySQL的DATE_FORMAT()函数可以将日期类型转换成字符串,需要两个参数。第一个参数为日期,第二个参数用来指定返回的日期格式。常用的时间格式字符如上所述,可以根据需要进行选择和组合。在实际应用中,适当选择不同的时间格式字符,可以使输出的日期更加符合实际需求,也可以方便地进行日期数据的处理操作。
极客笔记