当前位置: 代码迷 >> Oracle开发 >> 计算百分比(啊)
  详细解决方案

计算百分比(啊)

热度:97   发布时间:2016-04-24 06:38:37.0
计算百分比(在线等啊)
如何计算表中两个字段的相差百分比,并且不确定哪一个字段的值大
------解决方案--------------------

with tb(a,b)as(
select 3,7 from dual union all
select 7,3 from dual
)
select case when a>b then (a-b)/b*100
------解决方案--------------------
'%' 
else (b-a)/a*100
------解决方案--------------------
'%' end from tb

大概就是这个意思,细节自己去调吧
------解决方案--------------------
如在同一行 用greatest和least取最大最小,然后处理
不在同一行用max和min取最大最小,然后处理
------解决方案--------------------
SQL> select abs(1-2)/greatest(1,2) from dual;

ABS(1-2)/GREATEST(1,2)
----------------------
                    .5

SQL> select abs(1-3)/greatest(1,3) from dual;

ABS(1-3)/GREATEST(1,3)
----------------------
            .666666667

SQL> select abs(a-b)/greatest(a,b) from dual;
  相关解决方案