如何在MySQL DATE_FORMAT()函数中同时使用日期和时间格式字符?
MySQL DATE_FORMAT() 函数是用于将日期或时间的值格式化为可读性更高的字符串。它的语法如下:
DATE_FORMAT(date, format)
其中,date 参数是要格式化的日期或时间值,format 参数是指定输出格式的字符串。我们可以在 format 字符串中使用各种日期/时间格式字符来生成不同的输出。比如:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d'); -- 输出 2022-01-01
SELECT DATE_FORMAT(NOW(), '%T'); -- 输出 22:30:00
但是,在实际应用中,我们可能需要同时使用日期和时间格式字符来生成更丰富的输出。那么,如何在 MySQL DATE_FORMAT() 函数中同时使用日期和时间格式字符呢?下面,我们将一步步介绍。
阅读更多:MySQL 教程
组合日期和时间格式字符
首先,为了同时使用日期和时间格式字符,我们需要在 format 字符串中将它们组合起来。比如:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %T');
这将输出一个包含日期和时间的完整时间戳,比如:
2022-01-01 22:30:00
在这个例子中,我们使用了 %Y-%m-%d
和 %T
两个格式字符来生成日期和时间部分。其中,%Y
表示四位数的年份,%m
表示月份(01-12),%d
表示月中的第几天(01-31),而 %T
则表示时间部分,包括小时、分钟和秒,它的完整格式为 %H:%i:%s
。
使用其它日期和时间格式字符
除了上面提到的 %Y-%m-%d
和 %T
格式字符之外,MySQL DATE_FORMAT() 函数还支持众多其它日期和时间格式字符。下面是一些常用的格式字符示例:
格式字符 | 说明 |
---|---|
%Y-%m-%d %T |
完整时间戳 |
%Y-%m-%d |
年-月-日 |
%Y-%m |
年-月 |
%Y |
四位数的年份 |
%m |
月份(01-12) |
%d |
月中的第几天(01-31) |
%H |
小时(00-23) |
%h |
小时(01-12) |
%i |
分钟(00-59) |
%s |
秒钟(00-59) |
%p |
AM 或 PM |
例如:
SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H:%i:%s');
这将输出类似 “2022年01月01日 22:30:00” 的日期时间格式字符串。在这个例子中,我们使用了 %Y
、%m
、%d
、%H
、%i
和 %s
等格式字符,同时还加入了中文年月日和冒号等分隔符。注意,这里的格式字符串区分大小写,所以 %y
和 %M
等格式字符是不同于 %Y
和 %m
的。
结论
在 MySQL DATE_FORMAT() 函数中同时使用日期和时间格式字符只需要将它们组合在 format 字符串中即可。我们可以使用各种日期和时间格式字符来生成不同的输出,比如完整时间戳、年月日或包含中文的日期时间格式。在实际应用中,我们需要根据具体需求选择合适的格式字符来生成所需的日期时间字符串。