ใช้ฟังก์ชัน DATE_FORMAT() ด้วยรูปแบบ '%H:%i' เพื่อดึงเฉพาะชั่วโมงและนาที
ไวยากรณ์
SELECT DATE_FORMAT(yourDateTimeColumn, '%H:%i') AS time_hh_mm FROM yourTableName;
สร้างตารางตัวอย่าง
mysql> CREATE TABLE retrieveTimeDemo (
-> UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> UserArrivalTime DATETIME
-> );
เพิ่มข้อมูลตัวอย่าง
mysql> INSERT INTO retrieveTimeDemo(UserArrivalTime) VALUES
('2013-01-21 13:45:34'), ('2014-11-25 11:40:56'), ('2016-10-27 17:30:40'),
('2017-02-21 18:03:06'), ('2018-04-24 22:30:32');
แสดงข้อมูลทั้งหมด
mysql> SELECT * FROM retrieveTimeDemo;
ผลลัพธ์:
+--------+---------------------+ | UserId | UserArrivalTime | +--------+---------------------+ | 1 | 2013-01-21 13:45:34 | | 2 | 2014-11-25 11:40:56 | | 3 | 2016-10-27 17:30:40 | | 4 | 2017-02-21 18:03:06 | | 5 | 2018-04-24 22:30:32 | +--------+---------------------+
ดึงเวลาแบบ HH:MM
mysql> SELECT DATE_FORMAT(UserArrivalTime, '%H:%i') FROM retrieveTimeDemo;
ผลลัพธ์:
+--------------------------------------+ | DATE_FORMAT(UserArrivalTime, '%H:%i') | +--------------------------------------+ | 13:45 | | 11:40 | | 17:30 | | 18:03 | | 22:30 | +--------------------------------------+
รูปแบบฟอร์แมตเวลาที่ใช้บ่อย
| รูปแบบ | ความหมาย | ตัวอย่าง |
|---|---|---|
| %H | ชั่วโมง 24 ชม. (00-23) | 13 |
| %h | ชั่วโมง 12 ชม. (01-12) | 01 |
| %i | นาที (00-59) | 45 |
| %s | วินาที (00-59) | 34 |
| %p | AM/PM | PM |
| %T | เวลา 24 ชม. (HH:MM:SS) | 13:45:34 |
| %r | เวลา 12 ชม. (HH:MM:SS AM/PM) | 01:45:34 PM |
ฟังก์ชันทางเลือก
TIME(yourDateTimeColumn)- คืนค่า TIME (HH:MM:SS) รวมวินาทีHOUR(), MINUTE(), SECOND()- ดึงส่วนประกอบแยกกันTIME_FORMAT(time, '%H:%i')- จัดรูปแบบค่า TIME type