首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle 时间有关问题 2分10秒 按 3分算

2012-03-07 
oracle 时间问题 2分10秒 按 3分算因为做的是手机计费系统其中有两个字段begintimeendtime(被设计成varcha

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;

热点排行