Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธีดึงปีและเดือนจากวันที่ใน MySQL

สามารถทำได้ 3 วิธีใน MySQL

ด้วยฟังก์ชัน EXTRACT()

สำหรับการดึง YEAR และ MONTH ร่วมกัน เราสามารถใช้ฟังก์ชัน EXTRACT ได้ เราต้องระบุ YEAR_MONTH เป็น argument สำหรับฟังก์ชันนี้ เพื่อเข้าใจ ให้พิจารณาคำสั่งต่อไปนี้ที่ใช้ข้อมูลจากตาราง '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() แยกกัน

จะดึงปีและเดือนแยกกันโดยใช้ฟังก์ชัน 2 ตัวที่แตกต่างกัน เพื่อเข้าใจ ให้พิจารณาตัวอย่างต่อไปนี้ที่ใช้ข้อมูลจากตาราง '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)