1、启动oralce数据库,用plsqldev登录。数据库中有emp_test表和三条记录,如下所示:
2、decode函数最常见的用法是枚举值转换。上一步我们已经看到,emp_test表中的性别字段sex用0和1表示,但是我们的查询结果应该显示为男性和女性,而decode函数可以帮助我们进行转换。
(资料图片)
3、具体语法如下:
4、select et.id,et.name,decode(et.sex,1,’男"0,"女)作为性别来自雇员_测试et
5、decode(et.sex,1,"男性"0,"女性")的含义是,如果性别字段的值为1,则decode函数的返回值为"男性"如果为0,则decode函数的返回值为"女性"
6、decode函数的另一个用法是结合符号功能比较大小。sign(value)函数会根据value的值为0、正、负分别返回0、1和-1。例如
7、select et.id,et.name,decode(sign(et.age - 45),0,’中年"1,"老年""-1""青年)作为性别来自雇员_测试et
8、decode(sign(et.age-45),0,"中年"1,"老年""-1 ""青年")的含义是,如果sign函数的返回值为0,那么decode函数的返回值为"中年"
9、如果sign函数的返回值为1,则decode函数的返回值为‘老年’;如果sign函数的返回值为-1,则decode函数的返回值为‘青春’。
10、decode函数的另一个用途是确定一个字段是否为空。例如:
11、select et.id,et.name,decode(et.sex,null,’性别为空"1,"男"0,"女)作为性别,et.age from emp _ test et
12、decode(et.sex,null,"性别为null "1,"男性"0,"女性")的含义是:如果性别字段的值为null,那么decode函数的返回值为"性别为null "如果性别字段的值为1,
13、decode函数的返回值为"男性"如果为0,则decode函数的返回值为"女性"
本文到此结束,希望对大家有所帮助。
本文由用户上传,如有侵权请联系删除!X 关闭
Copyright 2015-2023 京津冀服务网 版权所有京ICP备2022022245号-12
邮箱:434 922 62 @qq.com