Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เพิ่มเวลาในคอลัมน์ DATETIME ด้วย ADDTIME ใน MySQL

การเตรียมข้อมูล

mysql> CREATE TABLE DemoTable1848 (ShippingDate DATETIME);

mysql> INSERT INTO DemoTable1848 VALUES('2019-10-11 12:30:45');
mysql> INSERT INTO DemoTable1848 VALUES('2019-01-12 10:00:00');
mysql> INSERT INTO DemoTable1848 VALUES('2019-12-03 17:30:00');

เพิ่มเวลา 4 ชั่วโมง 40 นาที

mysql> SELECT ADDTIME(ShippingDate, '4:40') FROM DemoTable1848;

ผลลัพธ์:

+------------------------------+
| addtime(ShippingDate,'4:40') |
+------------------------------+
| 2019-10-11 17:10:45          |
| 2019-01-12 14:40:00          |
| 2019-12-03 22:10:00          |
+------------------------------+

รูปแบบเวลาใน ADDTIME

ADDTIME(datetime, 'HH:MM:SS')
ADDTIME(datetime, 'HH:MM')
ADDTIME(datetime, 'D HH:MM:SS')  -- รวมวันได้

ฟังก์ชันวันที่/เวลาที่เกี่ยวข้อง

ฟังก์ชันคำอธิบายตัวอย่าง
ADDTIME(dt, time)บวกเวลาADDTIME('10:00', '1:30') = '11:30'
SUBTIME(dt, time)ลบเวลาSUBTIME('10:00', '1:30') = '08:30'
DATE_ADD(dt, INTERVAL)บวกช่วงวันที่/เวลาDATE_ADD(NOW(), INTERVAL 1 DAY)
DATE_SUB(dt, INTERVAL)ลบช่วงวันที่/เวลาDATE_SUB(NOW(), INTERVAL 1 HOUR)
TIMEDIFF(t1, t2)หาความต่างเวลาTIMEDIFF('12:00', '10:30') = '01:30'

ตัวอย่างเพิ่มเติม

-- บวก 1 วัน 2 ชั่วโมง
SELECT ADDTIME(ShippingDate, '1 02:00:00') FROM DemoTable1848;

-- อัปเดตข้อมูลจริง
UPDATE DemoTable1848 SET ShippingDate = ADDTIME(ShippingDate, '4:40');