Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


TIMEDIFF

📄字数 716
👁️阅读量 加载中...

功能描述

返回 expr1expr2 之间相差的时间。结果包含时分秒,精确到微秒。

语法格式

sql
TIMEDIFF(expr1, expr2)

输入参数

  • expr1DATETIMEDATETIME WITH TIME ZONETIMETIME WITH TIME ZONE 类型,或能隐式转换为上述类型的其他类型。
  • expr2DATETIMEDATETIME WITH TIME ZONETIMETIME WITH TIME ZONE 类型,或能隐式转换为上述类型的其他类型。

提示

  • NULL 无具体的类型,当参数均为 NULL 时,会产生异常 E10100 候选函数出现多义性,需要手动为参数指定具体的形参类型,如:TIMEDIFF(NULL::DATETIME, NULL::DATETIME)

输出结果

返回 INTERVAL HOUR TO SECOND 类型,任意输入参数为空字符串或 NULL 时,输出结果为 NULL

示例

sql
-- 计算'2007-12-31 23:59:59' 和 '2007-12-30' 之间相差的时间
SQL> SELECT TIMEDIFF('2007-12-31 23:59:59', '2007-12-30');

+-----------------------+
|         EXPR1         |
+-----------------------+
|       47:59:59.000000 |
+-----------------------+

-- 计算'2010-11-30 23:59:59 +08:30' 和 '2010-12-31 23:59:59 +05:30' 之间相差的时间
SQL> SELECT TIMEDIFF('2010-11-30 23:59:59 +08:30', '2010-12-31 23:59:59 +05:30');

+-----------------------+
|         EXPR1         |
+-----------------------+
|     -744:00:00.000000 |
+-----------------------+

-- 计算'2010-12-31 10:10:20.654321' 和 '2010-12-30 23:59:59.123456' 之间相差的时间
SQL> SELECT TIMEDIFF('2010-12-31 10:10:20.654321', '2010-12-30 23:59:59.123456');

+-----------------------+
|         EXPR1         |
+-----------------------+
|       10:10:21.530865 |
+-----------------------+