我們怎樣在 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)

更新於: 2020 年 6 月 22 日

4 千 + 次瀏覽

開始您的 職業

透過完成課程獲得認證

開始
廣告
© . All rights reserved.