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

วิธีรวม GET_FORMAT() กับ DATE_FORMAT() และ STR_TO_DATE() ใน MySQL

การรวม GET_FORMAT() กับ DATE_FORMAT() และ STR_TO_DATE() มีประโยชน์มาก

รวมกับ DATE_FORMAT()

เมื่อรวมกับ DATE_FORMAT() จะจัดรูปแบบวันที่/เวลา/วันเวลา ตามรูปแบบที่ได้จาก GET_FORMAT()

mysql> SELECT DATE_FORMAT('2017-10-22', GET_FORMAT(date, 'USA')) AS 'DATE IN USA FORMAT';
+-------------------+
| DATE IN USA FORMAT |
+-------------------+
| 10.22.2017        |
+-------------------+
1 row in set (0.00 sec)

คำสั่งด้านบนคืนวันที่ในรูปแบบ US

ยังใช้ดึงค่าวันที่จากตารางในรูปแบบเฉพาะได้:

mysql> SELECT * FROM date_testing1;
+-------+------------+
| Name  | Date       |
+-------+------------+
| Ram   | 2017-05-03 |
| Shyam | 2003-10-31 |
+-------+------------+
2 rows in set (0.07 sec)

mysql> SELECT Name, Date, DATE_FORMAT(date, GET_FORMAT(date, 'USA')) AS 'DATE IN US FORMAT' FROM date_testing1 WHERE Name='Ram';
+------+------------+-------------------+
| Name | Date       | DATE IN US FORMAT |
+------+------------+-------------------+
| Ram  | 2017-05-03 | 05.03.2017        |
+------+------------+-------------------+
1 row in set (0.00 sec)

คำสั่งคืนวันที่ในรูปแบบ USA สำหรับแถวที่ Name = 'Ram'

รวมกับ STR_TO_DATE()

ใช้กับ STR_TO_DATE() คล้ายกับการใช้กับ DATE_FORMAT()

mysql> SELECT STR_TO_DATE('22.10.2017', GET_FORMAT(DATE, 'EUR')) AS 'EUROPEAN FORMAT';
+-----------------+
| EUROPEAN FORMAT |
+-----------------+
| 2017-10-22      |
+-----------------+
1 row in set (0.00 sec)

คำสั่งด้านบนคืนวันที่ในรูปแบบยุโรป