在 SQL 中,日期和时间格式可以通过多种方法进行处理
使用内置函数:
DATE_FORMAT(date, format):将日期或日期时间值按指定格式转换为字符串。STR_TO_DATE(string, format):将字符串按指定格式转换为日期或日期时间值。示例:
-- 将日期时间值按指定格式转换为字符串
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');
-- 将字符串按指定格式转换为日期时间值
SELECT STR_TO_DATE('2022-01-01 12:34:56', '%Y-%m-%d %H:%i:%s');
使用自定义格式:
在上述内置函数中,format 参数可以根据需要自定义。常用的格式化选项包括:
%Y:四位数年份(如 2022)%y:两位数年份(如 22)%m:月份(01-12)%d:日期(01-31)%H:小时(00-23)%i:分钟(00-59)%s:秒钟(00-59)示例:
-- 将日期时间值按指定格式转换为字符串
SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H:%i:%s');
-- 将字符串按指定格式转换为日期时间值
SELECT STR_TO_DATE('2022年01月01日 12:34:56', '%Y年%m月%d日 %H:%i:%s');
使用默认格式:
如果不指定 format 参数,则会使用默认格式。默认格式通常为 '%Y-%m-%d'(对于日期值)或 '%Y-%m-%d %H:%i:%s'(对于日期时间值)。
示例:
-- 将日期时间值按默认格式转换为字符串
SELECT DATE_FORMAT(NOW());
-- 将字符串按默认格式转换为日期时间值
SELECT STR_TO_DATE('2022-01-01 12:34:56');
注意:在使用这些函数时,请确保输入的日期和时间值是有效的,否则可能会导致错误或意外结果。