Oracle计算两字段的百分比(round函数,decode函数)


Oracle数据库 对两列字段数据计算百分比

例:字段A(值=20),字段B(值=100),计算百分比结果为20%

1、SQL 语句如下,其中“2”代表百分比后保留两位,也可以写“4”等。

SELECT 字段A,字段B,round((字段A/字段B)*100,2)||'%' AS PERCENT FROM TABLE_NAME

 

2、字段A/字段B:即分子/分母,因分母不能为0,所以如果字段A下有某个值为0,执行上述SQL语句,则会提示“除数不能为0”,此情况下可用Oracle特有的“decode”函数,对分母进行处理。

介绍decode函数
decode(X,A,B,C,D,E) 这个函数运行的结果是,当X = A,函数返回B;当X != A 且 X = C,函数返回D;当X != A 且 X != C,函数返回E。 其中,X、A、B、C、D、E都可以是表达式

SQL语句如下:

SELECT 字段A,字段B, decode(字段2,0,0,round((字段A/字段B)*100,2))||'%' AS PERCENT FROM TABLE_NAME

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM