我们在使用MySQL的时候较多还是会用到日期函数,其中较多用的包括DATE_FORMAT、TIME_FORMAT、GET_FORMAT等函数。这里简单的把这些日期函数的格式整理。

1、DATE_FORMAT(date,format)
DATE_FORMAT 根据 format 串格式化 date 值,每个格式符前必须包含 %。
格式 | 描述 |
---|---|
%a | 缩写星期名 (Sun..Sat) |
%b | 缩写月名 (Jan..Dec) |
%c | 月, 数值(0..12) |
%D | 带有英文前缀的月中的天 (0th, 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..December) |
%m | 月份, 数值(00..12) |
%p | AM or PM |
%r | 时间, 12-小时(hh:mm:ss AM 或者PM) |
%S | 秒(00..59) |
%s | 秒(00..59) |
%T | 时间, 24-小时(hh:mm:ss) |
%W | 星期名 (Sunday..Saturday) |
%w | 周几 (0=Sunday..6=Saturday) |
%Y | 年, 数值, 4 个数字 |
%y | 年, 数值, 2 个数字 |
2、TIME_FORMAT(time,format)
TIME_FORMAT()用法与 DATE_FORMAT()函数类似,但是格式字符串可能仅包含小时,分钟,秒和微秒的格式说明符。其他说明符产生 NULL 值或 0。如果时间值中的小时部分大于23,则 %H 和 %k 小时格式说明符会产生一个比通常范围 0..23 大的值。其它小时格式说明符会产生模 12 的小时值。
3、STR_TO_DATE(str,format)
将字符串转换成日期或者时间,或者日期时间,取决于给定的 format 包含了哪部分内容。如果 format 包含了日期和时间格式,将返回 datetime 类型的值;如果只包含日期格式,则返回 date 类型的值;如果只包含了时间格式,将返回 time 类型的值。
4、GET_FORMAT()
GET_FORMAT() 有两个参数,第一个参数是DATE、TIME、DATETIME、TIMESTAMP 中的一种,第二参数可以是EUR、USA、JIS、ISO、INTERNAL 等值。该函数返回日期/时间的格式字符串,与 DATE_FORMAT()和 STR_TO_DATE()函数结合使用时非常有帮助。
函数调用 | 结果 |
---|---|
GET_FORMAT(DATE,’USA’) | ‘%m.%d.%Y’ |
GET_FORMAT(DATE,’JIS’) | ‘%Y-%m-%d’ |
GET_FORMAT(DATE,’ISO’) | ‘%Y-%m-%d’ |
GET_FORMAT(DATE,’EUR’) | ‘%d.%m.%Y’ |
GET_FORMAT(DATE,’INTERNAL’) | ‘%Y%m%d’ |
GET_FORMAT(DATETIME,’USA’) | ‘%Y-%m-%d %H.%i.%s’ |
GET_FORMAT(DATETIME,’JIS’) | ‘%Y-%m-%d %H:%i:%s’ |
GET_FORMAT(DATETIME,’ISO’) | ‘%Y-%m-%d %H:%i:%s’ |
GET_FORMAT(DATETIME,’EUR’) | ‘%Y-%m-%d %H.%i.%s’ |
GET_FORMAT(DATETIME,’INTERNAL’) | ‘%Y%m%d%H%i%s’ |
GET_FORMAT(TIME,’USA’) | ‘%h:%i:%s %p’ |
GET_FORMAT(TIME,’JIS’) | ‘%H:%i:%s’ |
GET_FORMAT(TIME,’ISO’) | ‘%H:%i:%s’ |
GET_FORMAT(TIME,’EUR’) | ‘%H.%i.%s’ |
GET_FORMAT(TIME,’INTERNAL’) | ‘%H%i%s’ |
参考:https://cloud.tencent.com/developer/article/1664231
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END