timestamp计算两个时间差,得到秒

发布时间 2023-03-28 15:48:15作者: 醉舞红尘

 timestamp计算两个时间差,得到秒

1.第一种通过函数进行转换(建议使用这一种)
timestamp_getTime(b.fssj,a.fssj)
create or replace function timestamp_getTime(a timestamp, b timestamp) return number is
begin
return extract (day from (a-b))*24*60*60+
extract (hour from (a-b))*60*60+
extract (minute from (a-b))*60+
extract (second from (a-b));
end ;

2.第二种通过格式转换(ceil向上取整)
ceil(3.05/0.5)=7
3.05/0.5 =6.1
ceil((To_date(to_char(b.fssj,'yyyy-mm-dd hh24-mi-ss') , 'yyyy-mm-dd hh24-mi-ss') - To_date(to_char(a.fssj,'yyyy-mm-dd hh24-mi-ss') , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 * 60)