MySQL ใช้ฟังก์ชัน DATE_FORMAT() ไม่ใช่ FORMATDATE() สำหรับจัดรูปแบบวันที่
ไวยากรณ์
SELECT *, DATE_FORMAT(yourDateColumnName, 'yourFormat') as anyAliasName FROM yourTableName;
ตัวอย่างการใช้งาน
สร้างตาราง:
mysql> create table DateFormatDemo (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> UserName varchar(10),
-> UserLoginDate date
-> );
Query OK, 0 rows affected (0.94 sec)
เพิ่มข้อมูล:
mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Mike',curdate());
mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Sam','2018-05-09');
mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Carol','2016-01-15');
mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Bob','2015-12-31');
mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('David','2012-08-19');
ข้อมูลเดิม:
+----+----------+---------------+ | Id | UserName | UserLoginDate | +----+----------+---------------+ | 1 | Mike | 2019-02-06 | | 2 | Sam | 2018-05-09 | | 3 | Carol | 2016-01-15 | | 4 | Bob | 2015-12-31 | | 5 | David | 2012-08-19 | +----+----------+---------------+
จัดรูปแบบวันที่เป็น DD-MM-YYYY:
mysql> select *, DATE_FORMAT(UserLoginDate, '%d-%m-%Y') as NewFormatOfDate from DateFormatDemo;
ผลลัพธ์:
+----+----------+---------------+-----------------+ | Id | UserName | UserLoginDate | NewFormatOfDate | +----+----------+---------------+-----------------+ | 1 | Mike | 2019-02-06 | 06-02-2019 | | 2 | Sam | 2018-05-09 | 09-05-2018 | | 3 | Carol | 2016-01-15 | 15-01-2016 | | 4 | Bob | 2015-12-31 | 31-12-2015 | | 5 | David | 2012-08-19 | 19-08-2012 | +----+----------+---------------+-----------------+
ตัวอักษรจัดรูปแบบที่นิยมใช้
%d- วัน (00-31)%m- เดือน (00-12)%Y- ปี 4 หลัก%H- ชั่วโมง (00-23)%i- นาที (00-59)%s- วินาที (00-59)