MariaDB SUBTIME() 函数使用指南
在 MariaDB 中,SUBTIME()
是一个内置函数,它从时间或日期时间表达式中减去一个时间。
MariaDB SUBTIME()
语法
这是 MariaDB SUBTIME()
函数的语法:
SUBTIME(timeExpr1, timeExpr2)
参数
timeExpr1
- 必需的。它是一个 datetime 或者 time 表达式。
timeExpr2
- 必需的。它是个时间表达式。它可以是正数或者负数。
如果您提供了错误数量的参数,MariaDB 将报告一个错误:ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SUBTIME'
。
返回值
MariaDB SUBTIME()
函数从 timeExpr1
中减去 timeExpr2
,并返回结果。
MariaDB SUBTIME()
函数按如下规则确定返回值的类型:
如果 timeExpr1
参数是动态类型,SUBTIME()
函数返回值类型为 TIME
。 否则,SUBTIME()
函数返回的数据类型和第一个参数一样。
MariaDB SUBTIME()
示例
示例 1
给指定的时间减去 10 秒钟:
SELECT
SUBTIME('2020-10-10 10:10:10', 10),
SUBTIME('10:10:10', 10)\G
输出:
SUBTIME('2020-10-10 10:10:10', 10): 2020-10-10 10:10:00
SUBTIME('10:10:10', 10): 10:10:00
示例 2
从指定的时间减去 1 分钟:
SELECT
SUBTIME('10:10:10', 100),
SUBTIME('10:10:10', '100'),
SUBTIME('10:10:10', '0:01:00')\G
输出:
SUBTIME('10:10:10', 100): 10:09:10
SUBTIME('10:10:10', '100'): 10:09:10
SUBTIME('10:10:10', '0:01:00'): 10:09:10
示例 3
给指定的时间加上和减去 1 小时 10 分钟 10 秒 10 微秒。
SELECT
SUBTIME('10:00:00', '01:10:10.000010'),
SUBTIME('10:00:00', '-01:10:10.000010'),
SUBTIME('10:00:00', '01:10:10.000010')\G
输出:
SUBTIME('10:00:00', '01:10:10.000010'): 08:49:49.999990
SUBTIME('10:00:00', '-01:10:10.000010'): 11:10:10.000010
SUBTIME('10:00:00', '01:10:10.000010'): 08:49:49.999990
这里,参数 '-01:10:10.000010'
前面的减号意思是 '10:00:00'
加上 '01:10:10.000010'
,这和 ADDTIME()
函数结果一样。
结论
在 MariaDB 中,SUBTIME()
是一个内置函数,它在指定的时间上加上指定的时间间隔并返回结果。