MySQL中的日期转换函数实现(mysql的日期转换函数)

MySQL 数据库有一系列用于处理日期和时间的函数,用以处理表中的日期或时间字段,各函数功能不同,其中大多数函数会隐式地将字符串类型转换为日期或时间类型,使日期处理更容易。本文将介绍MySQL中的日期转换函数。

DATETIME(): DATETIME()函数用于将字符串类型的日期转换为DATETIME类型的日期,字符串的格式和MySQL格式‘YYYY-MM-DD HH:MM:SS’保持一致,如果字符串的格式不一致,将无法转换成DATETIME类型的日期,如果转换失败,MySQL返回一个默认DATETIME值‘0000-00-00 00:00:00’:

mysql> select datetime(‘2018-07-22 15:26:32’);

+——————————————-+

| datetime(‘2018-07-22 15:26:32’) |

+——————————————-+

| 2018-07-22 15:26:32 |

+——————————————-+

1 row in set (0.00 sec)

DATE_FORMAT(): DATE_FORMAT()函数可以将日期转换为用户自定义格式的字符串,其使用方法为DATE_FORMAT(date,format),date参数可以是字符串类型或者 date 类型,format 表示转换后需要显示的格式,比如%Y表示年份,%r表示星期,%d表示日期等等:

mysql> SELECT DATE_FORMAT(CURDATE(), ‘%Y年%m月%d日 星期%w’);

+———————————-+

| DATE_FORMAT(CURDATE(), ‘%Y年%m月%d日 星期%w’) |

+———————————-+

| 2020年03月13日 星期5 |

+———————————-+

1 row in set (0.00 sec)

FROM_UNIXTIME(): FROM_UNIXTIME()函数接受一个UNIX时间戳作为输入参数,并将其转换为世界标准时间,其格式可以通过format参数来指定:

mysql> SELECT FROM_UNIXTIME(1303628225, ‘%Y-%m-%d %h:%i:%s’);

+———————————+

| FROM_UNIXTIME(1303628225, ‘%Y-%m-%d %h:%i:%s’) |

+———————————+

| 2011-04-24 09:50:25 |

+———————————+

1 row in set (0.00 sec)

UNIX_TIME(): UNIX_TIME()函数用于将参数转换为UNIX时间戳,其原型为UNIX_TIME(date),date参数可以是字符串类型或者date类型的日期:

mysql> SELECT UNIX_TIME(‘2021-01-07 15:52:01’);

+————————————+

| UNIX_TIME(‘2021-01-07 15:52:01’) |

+————————————+

| 1610027321 |

+————————————+

1 row in set (0.00 sec)

以上就是MySQL中常用的几个日期转换函数,如果存在复杂的日期处理情况,可以根据自己的需求选择恰当的函数来实现。


数据运维技术 » MySQL中的日期转换函数实现(mysql的日期转换函数)