การลบวินาทีด้วย INTERVAL
ใช้ datetime_col - INTERVAL n SECOND ลบวินาทีจากคอลัมน์ DATETIME ทุกแถว
ตัวอย่าง
mysql> create table DemoTable833(ArrivalTime datetime);
Query OK, 0 rows affected (0.79 sec)
mysql> insert into DemoTable833 values('2019-01-10 12:40:50');
mysql> insert into DemoTable833 values('2019-02-16 11:10:30');
mysql> insert into DemoTable833 values('2018-03-17 10:00:10');
คำสั่ง SELECT (ลบ 10 วินาที)
mysql> select ArrivalTime - INTERVAL 10 SECOND from DemoTable833;
ผลลัพธ์:
+--------------------------------+
| ArrivalTime - INTERVAL 10 SECOND |
+--------------------------------+
| 2019-01-10 12:40:40 |
| 2019-02-16 11:10:20 |
| 2018-03-17 10:00:00 |
+--------------------------------+
คำสั่ง UPDATE (เปลี่ยนข้อมูลจริง)
UPDATE DemoTable833 SET ArrivalTime = ArrivalTime - INTERVAL 10 SECOND;
หน่วยเวลาที่ใช้ได้
| หน่วย | ตัวอย่าง |
|---|---|
SECOND | INTERVAL 30 SECOND |
MINUTE | INTERVAL 5 MINUTE |
HOUR | INTERVAL 2 HOUR |
DAY | INTERVAL 1 DAY |
MONTH | INTERVAL 1 MONTH |
YEAR | INTERVAL 1 YEAR |
ฟังก์ชันทางเลือก: DATE_SUB()
SELECT DATE_SUB(ArrivalTime, INTERVAL 10 SECOND) FROM DemoTable833;
UPDATE DemoTable833 SET ArrivalTime = DATE_SUB(ArrivalTime, INTERVAL 10 SECOND);
สรุป
ใช้ datetime_col - INTERVAL n SECOND หรือ DATE_SUB(datetime_col, INTERVAL n SECOND) ลบเวลาจากคอลัมน์ DATETIME