oracle 时间问题 2分10秒 按 3分算
因为做的是手机计费系统 其中有两个字段
begintime endtime (被设计成varchar2类型,不知道为什么)
两个字段相减 得到通话时间
select round(to_char((to_date(endtime, 'yyyy-mm-dd hh24:mi:ss ')-to_date
(begintime, 'yyyy-mm-dd hh24:mi:ss '))*24*60*60),0) as times from origcdr
这个得到的结果是以秒为单位的
费率是以分钟为单位的
而且不满一分的都按一分种算
比如 这个结果是 120秒 那就是 2分钟
127秒 那就按 3分种算
有没有好的解决方法
------解决方案--------------------select round((to_date(endtime, 'yyyy-mm-dd hh24:mi:ss ') -
to_date(begintime, 'yyyy-mm-dd hh24:mi:ss ')) *24 * 60 + 0.49999,0) a from origcdr
------解决方案--------------------select ceil((to_date(endtime, 'yyyymmddhh24miss ') - to_date(begintime, 'yyyymmddhh24miss ')) * 24 * 60 ) from origcdr;