格式化:日期 —> 字符串
解析: 字符串 —> 日期
这里指的是日期的显式格式化和解析
DATE_FORMAT(date,fmt)
按照字符串fmt格式化日期date值
TIME_FORMAT(time,fmt)
按照字符串fmt格式化时间time值
GET_FORMAT(date_type,format_type)
返回日期字符串的显示格式
既不是格式化也不是解析,用于得到日期的格式,如:
'%Y-%M-%D'
STR_TO_DATE(str, fmt)
按照字符串fmt对str进行解析,解析为一个日期
非GET_FORMAT 函数中fmt参数常用的格式符:
GET_FORMAT函数中date_type和format_type参数取值如下:
代码示例
#格式化:
SELECT
DATE_FORMAT(CURDATE(),'%Y-%M-%D'),
DATE_FORMAT(NOW(),'%Y-%m-%d'),
TIME_FORMAT(CURTIME(),'%h:%i:%S'),
DATE_FORMAT(NOW(),'%Y-%M-%D %h:%i:%S %W %w %T %r')
FROM DUAL;
#解析:格式化的逆过程
SELECT
STR_TO_DATE('2021-October-25th 11:37:30 Monday 1','%Y-%M-%D %h:%i:%S %W %w'),
GET_FORMAT(DATE,'USA'),
DATE_FORMAT(CURDATE(),GET_FORMAT(DATE,'USA'))
FROM DUAL;