MySQL 如何从MySQL中的日期中提取年份和月份?

MySQL 如何从MySQL中的日期中提取年份和月份?

在MySQL数据库中,日期通常以YYYY-MM-DD的形式存储。但是有时候,我们需要从日期中提取年份和月份,以便于数据分析和报表制作等方面的应用。那么,如何从MySQL中的日期中提取年份和月份呢?接下来,本文将介绍三种方法。

阅读更多:MySQL 教程

1. 使用YEAR()和MONTH()函数

YEAR()和MONTH()函数是MySQL内置的函数,用于返回时间戳或日期时间值的年份和月份。示例代码如下:

SELECT YEAR('2022-01-01') AS year, MONTH('2022-01-01') AS month;

输出结果为:

+------+-------+
| year | month |
+------+-------+
| 2022 |     1 |
+------+-------+

在上面的代码中,我们通过SELECT语句调用YEAR()和MONTH()函数,从日期中提取出了年份和月份。其中,YEAR()函数返回年份,MONTH()函数返回月份。

2. 使用DATE_FORMAT()函数

DATE_FORMAT()函数是MySQL内置的函数,用于将日期格式化为字符型。通过使用DATE_FORMAT()函数,我们可以在一条SQL语句中将日期中的年份和月份提取出来。示例代码如下:

SELECT DATE_FORMAT('2022-01-01','%Y') AS year, DATE_FORMAT('2022-01-01','%m') AS month;

输出结果为:

+------+-------+
| year | month |
+------+-------+
| 2022 |    01 |
+------+-------+

在上面的代码中,我们通过SELECT语句调用DATE_FORMAT()函数,并指定了格式字符串’%Y’和’%m’,以将日期中的年份和月份提取出来。其中,’%Y’表示提取年份,’%m’表示提取月份。

3. 使用SUBSTR()函数和LOCATE()函数

SUBSTR()函数和LOCATE()函数是MySQL内置的函数,用于从字符串中提取子字符串。通过使用SUBSTR()函数和LOCATE()函数,我们可以在一条SQL语句中将日期中的年份和月份提取出来。示例代码如下:

SELECT SUBSTR('2022-01-01', 1, LOCATE('-', '2022-01-01')-1) AS year,
SUBSTR('2022-01-01', LOCATE('-', '2022-01-01')+1, 2) AS month;

输出结果为:

+------+-------+
| year | month |
+------+-------+
| 2022 |    01 |
+------+-------+

在上面的代码中,我们通过SELECT语句调用SUBSTR()函数和LOCATE()函数,以将日期中的年份和月份提取出来。其中,SUBSTR()函数用于从字符串中提取子字符串,LOCATE()函数用于定位’-‘的位置。

结论

本文介绍了三种从MySQL中的日期中提取年份和月份的方法。如果您需要从日期中提取其他时间单位的值,也可以使用类似的方法。但是需要注意的是,在实际应用中,不同的方法可能会有不同的性能表现,需要根据具体情况选择合适的方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程