当我尝试查询Oracle中2个时间戳之间的差异时,结果通常会返回间隔。
select NVL2(ERROR_OUT_TS, ERROR_OUT_TS-ERROR_IN_TS, null) from table
或
select interval '8 00:00:10' day to second from dual
但是当我尝试选择超过一定间隔的行时,Oracle会给我这个错误。
where ERROR_OUT_TS - ERROR_IN_TS <= '00 00:02:00'
或
where ERROR_OUT_TS - ERROR_IN_TS >= interval '0 00:00:10' day to second
它一直说“领先精度太小”。
我试图返回0 00:00:00:000之间的间隔 它对其他客户来说很好。只有少数客户在体验它。
如何选择正确的精度?
答案 0 :(得分:2)
尝试:
select interval '8 00:00:10' day(4) to second(4) from dual;
它的作用是'天'和'秒'是默认的2位数,这会将它们扩展为接受4.你可能只需要3个。