Oracle decode函数 除数为零
decode (expression, search_1, result_1)
如果 expression结果=search_1结果,则返回result_1,类似 if else
decode (expression, search_1, result_1, search_2, result_2)
decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n)
decode (expression, search_1, result_1, default)
如果 expression结果=search_1结果,则返回result_1,否则反回default
decode (expression, search_1, result_1, search_2, result_2, default)
decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n, default)
decode函数比较表达式和搜索字,如果匹配,返回结果;如果不匹配,返回default值;如果未定义default值,则返回空值。
如:
select (a/b*100) as percent from t
如果b为0会出现被除数为0
解决:
select decode(b,0,0,a/b*100) as percent from t
作者:robert 出处:http://www.cnblogs.com/robertsun/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有错误,欢迎指出。以免更多的人被误导。 欢迎留言交流。 |
posted on 2015-01-08 16:45 robertsun 阅读(2207) 评论(0) 编辑 收藏 举报