Oracle函数decode的用法简介

以下的文章主要是介绍Oracle 函数decode,我们都知道decode函数将该数值和c一系列的相关序偶相比较来决定最终的相关的返回结果 。所谓的序偶,简单的说就是成对的出现;我们将这个函数与switch比较。

10年专注建站、设计、互联网产品按需开发服务,业务涵盖成都品牌网站建设成都商城网站开发、微信小程序定制开发、软件系统开发、重庆APP开发等。凭借多年丰富的经验,我们会仔细了解每个客户的需求而做出多方面的分析、设计、整合,为客户设计出具风格及创意性的商业解决方案,成都创新互联更提供一系列网站制作和网站推广的服务,以推动各中小企业全面信息数字化,并利用创新技术帮助各行业提升企业形象和运营效率。

我们发现他们基本相似,***不同的是switch将要比较的值放在case后面都加上了break中。

以下一个例子:(我直接从网上找的)

 
 
 
  1. SELECT id,  
  2. decode(flag,’Y’,'Yes’,'N’,’No’,NULL,’None’,'Yes’)  
  3. FROM t_test;  

当t_test的flag字段为Y时返回Yes,为N时返回No,为NULL时返回None,默认返回Yes。

看看我遇到的问题:

 
 
 
  1. SELECT a.id,  
  2. a.user_name,  
  3. a.oper_time time2,  
  4. a.oper_type,  
  5. a.description,  
  6. a.oper_flag,  
  7. decode(a.oper_flag, '1', '成功', '失败') oper_flag,  
  8. a.ip,  
  9. b.true_name  
  10. FROM SEC_LOG_OPERATION a  
  11. left join sec_user b on a.user_name = b.user_name  
  12. where 11 = 1  
  13. order by oper_time desc  

原来这红线部分是:

Oracle 函数decode(a.oper_flag, 1, '成功', '失败')

我在查询的时候会报错,原因是oper_flag这个字段数据中有非数字类型,也就是这个字段不仅有1、0,还有“失败”,这样数据!=字符。所以我们把1当字符处理就可以了。

【编辑推荐】

  1. Oracle join的正确用法描述
  2. Oracle ebs的oaf开发环境进行正确的配置
  3. Oracle reports功不可没,实现报表定长输出
  4. 查看Oracle当前连接数的具体方案
  5. 加速Oracle大批量数据处理的2个好用方案

当前标题:Oracle函数decode的用法简介
文章网址:http://www.shufengxianlan.com/qtweb/news24/167524.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联