📜  mysql 从 datetime 获取时间 - SQL (1)

📅  最后修改于: 2023-12-03 15:03:05.885000             🧑  作者: Mango

mysql 从 datetime 获取时间 - SQL

在MySQL中,我们经常需要将日期和时间从datetime格式转换成可读的时间格式。本文章将介绍如何从datetime类型的字段中获取时间。

1. 日期时间格式

MySQL支持多种日期时间格式:

  • DATE:'YYYY-MM-DD'
  • TIME:'HH:MM:SS'
  • DATETIME:'YYYY-MM-DD HH:MM:SS'
  • TIMESTAMP:'YYYY-MM-DD HH:MM:SS'
2. 获取时间

从datetime类型字段中获取时间可以使用MySQL内置函数,下面是一些常见的函数:

2.1 DATE_FORMAT()

DATE_FORMAT()函数可以将datetime格式的字段转换成指定的时间格式。例如,下面的查询将'2021-12-31 23:59:59'字段转换成'2021年12月31日 23点59分59秒'格式。

SELECT DATE_FORMAT('2021-12-31 23:59:59', '%Y年%m月%d日 %H点%i分%s秒');

输出:

+------------------------------------+
| DATE_FORMAT('2021-12-31 23:59:59') |
+------------------------------------+
| 2021年12月31日 23点59分59秒        |
+------------------------------------+
2.2 EXTRACT()

EXTRACT()函数可以从datetime类型字段中提取指定的时间单位(如年、月、日、小时、分钟、秒等)。例如,下面的查询将从'2021-12-31 23:59:59'字段中提取小时和分钟。

SELECT EXTRACT(HOUR_MINUTE FROM '2021-12-31 23:59:59');

输出:

+--------------------------------------+
| EXTRACT(HOUR_MINUTE FROM '2021-12-31 23:59:59') |
+--------------------------------------+
| 2359                                 |
+--------------------------------------+
3. 总结

本文介绍了从datetime类型的字段中获取时间的两种常见方法。使用DATE_FORMAT()可以将datetime类型的字段转换成指定的时间格式,使用EXTRACT()可以从datetime类型的字段中提取指定的时间单位。这些函数可以让我们更方便地处理datetime类型的数据。