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

แปลง DateTime เป็นข้อความใน MySQL ด้วย DATE_FORMAT

เมื่อต้องการแสดงค่า DATETIME หรือ TIMESTAMP ในรูปแบบข้อความที่กำหนดเอง ให้ใช้ฟังก์ชัน DATE_FORMAT() ซึ่งยืดหยุ่นสูงและรองรับรูปแบบมากมาย

รูปแบบคำสั่ง

SELECT DATE_FORMAT(yourColumnName, '%d %m %y') AS anyVariableName 
FROM yourTableName;

ตัวอย่างสมบูรณ์

1. สร้างตารางและเพิ่มข้อมูล

mysql> CREATE TABLE DateAsStringDemo (
    -> YourDateTime DATETIME
    -> );
Query OK, 0 rows affected (0.57 sec)

mysql> INSERT INTO DateAsStringDemo VALUES (CURDATE());
Query OK, 1 row affected (0.24 sec)

2. ดูข้อมูลดิบ

mysql> SELECT * FROM DateAsStringDemo;
+---------------------+
| YourDateTime        |
+---------------------+
| 2018-11-26 00:00:00 |
+---------------------+
1 row in set (0.00 sec)

3. แปลงเป็นข้อความรูปแบบ วัน เดือน ปี (2 หลัก)

mysql> SELECT DATE_FORMAT(YourDateTime, '%d %m %y') AS YourDateAsString 
    -> FROM DateAsStringDemo;
+------------------+
| YourDateAsString |
+------------------+
| 26 11 18         |
+------------------+
1 row in set (0.00 sec)

รูปแบบที่นิยมใช้

รูปแบบผลลัพธ์ตัวอย่างคำอธิบาย
%Y-%m-%d2018-11-26มาตรฐาน ISO 8601
%d/%m/%Y26/11/2018รูปแบบไทย/ยุโรป
%d %M %Y26 November 2018อ่านง่าย มีชื่อเดือน
%H:%i:%s14:30:59เวลา 24 ชั่วโมง
%r02:30:59 PMเวลา 12 ชั่วโมง AM/PM

หมายเหตุ: DATE_FORMAT() คืนค่าเป็น VARCHAR ไม่ใช่ชนิดวันที่อีกต่อไป