หาความต่างระหว่าง 2 Timestamp เป็นวินาที ใช้ TIME_TO_SEC() และ TIMEDIFF()
Syntax
SELECT TIME_TO_SEC(TIMEDIFF(col1, col2)) AS diff_seconds FROM yourTableName;
ตัวอย่าง
mysql> CREATE TABLE TimeToSecond (MyTime TIMESTAMP, YourTime TIMESTAMP);
mysql> INSERT INTO TimeToSecond VALUES
-> ('2016-05-10 10:02:00', '2016-05-10 10:00:00'),
-> ('2016-05-10 10:06:00', '2016-05-10 10:03:00'),
-> ('2018-05-10 11:00:00', '2018-05-10 10:00:00');
ข้อมูลในตาราง
+---------------------+---------------------+
| MyTime | YourTime |
+---------------------+---------------------+
| 2016-05-10 10:02:00 | 2016-05-10 10:00:00 |
| 2016-05-10 10:06:00 | 2016-05-10 10:03:00 |
| 2018-05-10 11:00:00 | 2018-05-10 10:00:00 |
+---------------------+---------------------+
Query หาความต่างเป็นวินาที
mysql> SELECT TIME_TO_SEC(TIMEDIFF(MyTime, YourTime)) AS DifferenceInSeconds FROM TimeToSecond;
ผลลัพธ์
+---------------------+
| DifferenceInSeconds |
+---------------------+
| 120 | -- 2 นาที
| 180 | -- 3 นาที
| 3600 | -- 1 ชั่วโมง
+---------------------+