ใช้ฟังก์ชัน SEC_TO_TIME() แปลงวินาทีเป็น TIME (HH:MM:SS) โดยคูณนาทีด้วย 60
ไวยากรณ์
SELECT SEC_TO_TIME(yourIntColumnName * 60) AS anyAliasName FROM yourTableName;
สร้างตารางตัวอย่าง
mysql> CREATE TABLE convertNumberToMinute (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> NumberToMinute INT
-> );
เพิ่มข้อมูลตัวอย่าง (60-120 นาที)
mysql> INSERT INTO convertNumberToMinute(NumberToMinute) VALUES (60), (70), (80), (90), (100), (110), (120);
แสดงข้อมูลทั้งหมด
mysql> SELECT * FROM convertNumberToMinute;
ผลลัพธ์:
+----+----------------+ | Id | NumberToMinute | +----+----------------+ | 1 | 60 | | 2 | 70 | | 3 | 80 | | 4 | 90 | | 5 | 100 | | 6 | 110 | | 7 | 120 | +----+----------------+
แปลงนาทีเป็น TIME
mysql> SELECT SEC_TO_TIME(NumberToMinute * 60) AS MinuteDemo FROM convertNumberToMinute;
ผลลัพธ์:
+------------+ | MinuteDemo | +------------+ | 01:00:00 | | 01:10:00 | | 01:20:00 | | 01:30:00 | | 01:40:00 | | 01:50:00 | | 02:00:00 | +------------+
แสดงคู่กัน (นาที และ เวลา)
mysql> SELECT NumberToMinute, SEC_TO_TIME(NumberToMinute * 60) AS MinuteDemo FROM convertNumberToMinute;
ผลลัพธ์:
+----------------+------------+ | NumberToMinute | MinuteDemo | +----------------+------------+ | 60 | 01:00:00 | | 70 | 01:10:00 | | 80 | 01:20:00 | | 90 | 01:30:00 | | 100 | 01:40:00 | | 110 | 01:50:00 | | 120 | 02:00:00 | +----------------+------------+
ฟังก์ชันเกี่ยวข้อง
TIME_TO_SEC(time)- แปลง TIME เป็นวินาที (ย้อนกลับ)SEC_TO_TIME(seconds)- แปลงวินาทีเป็น TIMETIME_FORMAT(time, format)- จัดรูปแบบ TIME (เช่น%H:%iเพื่อซ่อนวินาที)
กรณีเกิน 24 ชั่วโมง
SEC_TO_TIME รองรับได้ถึง 838:59:59 (ประมาณ 34 วัน) เกินกว่านี้จะคืนค่า NULL