我正在尝试在Oracle数据库中获得时差。除一行外,所有行的时间差都可以。这是查询
SELECT MAX(REGEXP_SUBSTR (CAST(TO_DATE(call_end, 'YYYY/MM/DD HH24:MI:SS') AS TIMESTAMP) - CAST(TO_DATE(call_start, 'YYYY/MM/DD HH24:MI:SS') AS TIMESTAMP), '\d{2}:\d{2}:\d{2}')) AS call_time
FROM calls
时差发生在下面的行:
call_end:'2020-02-20 13:00:20'call_start:'2020-02-20 12:56:03'
返回的结果是'11:55:43',这是错误的。正确答案应该是“ 00:04:17”
我不确定您是否希望将结果作为间隔或时间戳记,但这应该可以满足您的要求: