MySQL ADDTIME() 函数将指定的时间间隔添加到时间/日期时间值,然后返回修改后的时间/日期时间值。
使用这个以负号 time 值作为参数的函数相当于使用 SUBTIME() 函数。
语法
ADDTIME(datetime, time)
参数
datetime | 必需。 指定应添加时间间隔的时间/日期时间值。 |
time | 必填。 指定添加到日期时间的时间间隔。允许正值和负值。 |
返回值
返回修改后的时间/日期时间值。
示例1:
下面的示例显示了ADDTIME()函数的用法。
mysql> SELECT ADDTIME('2019-10-25 08:10:25', '5.000010');
Result: '2019-10-25 08:10:30.000010'
mysql> SELECT ADDTIME('2019-10-25 08:10:25', '10:5.000010');
Result: '2019-10-25 18:15:25.000010'
mysql> SELECT ADDTIME('2019-10-25 08:10:25', '2:10:5.000010');
Result: '2019-10-25 10:20:30.000010'
mysql> SELECT ADDTIME('2019-10-25 08:10:25', '3 2:10:5.000010');
Result: '2019-10-28 10:20:30.000010'
mysql> SELECT ADDTIME('2019-10-25 08:10:25', '-3 2:10:5.000010');
Result: '2019-10-22 06:00:19.999990'
mysql> SELECT ADDTIME('01:20:35', '5.000010');
Result: '01:20:40.000010'
mysql> SELECT ADDTIME('01:20:35', '10:5.000010');
Result: '11:25:35.000010'
mysql> SELECT ADDTIME('01:20:35', '5:10:5.000010');
Result: '06:30:40.000010'
mysql> SELECT ADDTIME('01:20:35', '-5:10:5.000010');
Result: '-03:49:30.000010'
示例2:
考虑一个名为 EmployeeLogin 的数据库表,其中包含以下记录:
EmpID | Name | Login Stamp | Expected Logout Stamp |
---|---|---|---|
1 | John | 2019-10-25 09:20:38 | 2019-10-25 17:50:38 |
2 | Marry | 2019-10-25 09:21:05 | 2019-10-25 17:51:05 |
3 | Jo | 2019-10-25 09:24:35 | 2019-10-25 17:54:35 |
4 | Kim | 2019-10-25 09:25:24 | 2019-10-25 17:55:24 |
5 | Ramesh | 2019-10-25 09:27:16 | 2019-10-25 17:57:16 |
要在此表中插入新记录,可以使用以下语句。
INSERT INTO EmployeeLogin
VALUES (6, 'Suresh', NOW(), ADDTIME(NOW(), '8:30');
-- 查看结果
SELECT * FROM EmployeeLogin;
这将产生类似于以下内容的结果:
EmpID | Name | Login Stamp | Expected Logout Stamp |
---|---|---|---|
1 | John | 2019-10-25 09:20:38 | 2019-10-25 17:50:38 |
2 | Marry | 2019-10-25 09:21:05 | 2019-10-25 17:51:05 |
3 | Jo | 2019-10-25 09:24:35 | 2019-10-25 17:54:35 |
4 | Kim | 2019-10-25 09:25:24 | 2019-10-25 17:55:24 |
5 | Ramesh | 2019-10-25 09:27:16 | 2019-10-25 17:57:16 |
6 | Suresh | 2019-10-25 09:28:19 | 2019-10-25 17:58:19 |