我们怎样在 MySQL 中从日期中提取年份和月份?
这可以通过 MySQL 中以下三种方式完成
使用 EXTRACT() 函数
要同时提取年份和月份,可以使用 EXTRACT 函数。我们需要提供 YEAR_MONTH 作为该函数的参数。为了理解这一点,请考虑使用表“Collegedetail”中的数据来执行以下函数 −
mysql> Select EXTRACT(YEAR_MONTH From estb) from collegedetail; +-------------------------------+ | EXTRACT(YEAR_MONTH From estb) | +-------------------------------+ | 201005 | | 199510 | | 199409 | | 200107 | | 201007 | +-------------------------------+ 5 rows in set (0.00 sec)
使用 DATE_FORMAT() 函数
它可以同时提取年份和月份,也可以分别提取这两者。顾名思义,我们还可以设置其输出的格式。为了理解这一点,请考虑以下示例,它使用了表“Collegedetail”中的数据 −
mysql> Select DATE_FORMAT(estb, '%Y %m') from collegedetail; +----------------------------+ | DATE_FORMAT(estb, '%Y %m') | +----------------------------+ | 2010 05 | | 1995 10 | | 1994 09 | | 2001 07 | | 2010 07 | +----------------------------+ 5 rows in set (0.00 sec) mysql> Select DATE_FORMAT(estb, '%Y') from Collegedetail; +-------------------------+ | DATE_FORMAT(estb, '%Y') | +-------------------------+ | 2010 | | 1995 | | 1994 | | 2001 | | 2010 | +-------------------------+ 5 rows in set (0.00 sec) mysql> Select DATE_FORMAT(estb, '%m') from Collegedetail; +-------------------------+ | DATE_FORMAT(estb, '%m') | +-------------------------+ | 05 | | 10 | | 09 | | 07 | | 07 | +-------------------------+ 5 rows in set (0.00 sec) mysql> Select DATE_FORMAT(estb, '%M') from Collegedetail; +-------------------------+ | DATE_FORMAT(estb, '%M') | +-------------------------+ | May | | October | | September | | July | | July | +-------------------------+ 5 rows in set (0.10 sec)
使用两个不同的函数,YEAR() 和 MONTH()
它将使用两个不同的函数分别提取年份和月份。为了理解这一点,请考虑以下示例,它使用了表“Collegedetail”中的数据 −
mysql> Select YEAR(estb) AS 'Year', MONTH(estb) As 'MONTH' From collegedetail; +------+-------+ | Year | MONTH | +------+-------+ | 2010 | 5 | | 1995 | 10 | | 1994 | 9 | | 2001 | 7 | | 2010 | 7 | +------+-------+ 5 rows in set (0.00 sec)
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP