decode()函数简介:

主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明);

使用方法:

Select decode(columnname,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)

From talbename

Where …

其中columnname为要选择的table中所定义的column,

·含义解释:

decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)的理解如下:

if (条件==值1)

then    

return(翻译值1)

elsif (条件==值2)

then    

return(翻译值2)    

......

elsif (条件==值n)

then    

return(翻译值n)

else    

return(缺省值)

end if

注:其中缺省值可以是你要选择的column name 本身,也可以是你想定义的其他值,比如Other等;

举例说明:

现定义一table名为output,其中定义两个column分别为monthid(var型)和sale(number型),若sale值=1000时翻译为D,=2000时翻译为C,=3000时翻译为B,=4000时翻译为A,如是其他值则翻译为Other;

SQL如下:

Select monthid , decode (sale,1000,'D',2000,'C',3000,'B',4000,'A',’Other’) sale from output

特殊情况:

若只与一个值进行比较

Select monthid ,decode(sale, NULL,‘---’,sale) sale from output

另:decode中可使用其他函数,如nvl函数或sign()函数等;

NVL(EXPR1,EXPR2)

若EXPR1是NULL,则返回EXPR2,否则返回EXPR1.

SELECT NAME,NVL(TO_CHAR(COMM),'NOT APPLICATION') FROM TABLE1;

如果用到decode函数中就是

select monthid,decode(nvl(sale,6000),6000,'NG','OK') from output

sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1,

如果取较小值就是

select monthid,decode(sign(sale-6000),-1,sale,6000) from output,即达到取较小值的目的。

转载于:https://www.cnblogs.com/ciaoit/p/7569304.html

decode()函数相关推荐

  1. 数据库中自定义排序规则,Mysql中自定义字段排序规则,Oracle中自定义字段排序规则,decode函数的用法,field函数的用法

    数据库中自定义排序 场景:有一张banner表,表中有一个status字段,有0, 1, 2三个状态位,我想要 1,0,2的自定义排序(这里是重点),然后再进行之上对sequence字段进行二次排序( ...

  2. mysql sql decode函数用法_oracle中的decode的使用介绍

    含义解释: decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下: IF 条件=值1 THEN RETURN(翻译值1) ELSIF 条件=值2 THE ...

  3. oracle decode一个值对应多个值,如何使用Oracle的Decode函数进行多值判断

    Decode函数的语法结构如下: decode (expression, search_1, result_1) decode (expression, search_1, result_1, sea ...

  4. 先随机后排序的oracle,Oracle用decode函数或CASE-WHEN实现自定义排序

    Oracle用decode函数或CASE-WHEN实现自定义排序 1 问题 对SQL排序,只要在order by后面加字段就可以了,可以通过加desc或asc来选择降序或升序.但排序规则是默认的,数字 ...

  5. SQL中 decode()函数简介

    今天看别人的SQL时看这里面还有decode()函数,以前从来没接触到,上网查了一下,还挺好用的一个函数,写下来希望对朋友们有帮助哈! decode()函数简介: 主要作用:将查询结果翻译成其他值(即 ...

  6. decode函数_decode函数的妙用网友的两个问题解答

    <decode函数的妙用>这篇文章中,提到两种写法, SQL> select * from emp where id=:id and (name=:name or (name is ...

  7. decode函数python在哪里_Python基础知识——encode和decode函数

    以前我们介绍过,Python2.x中默认的编码的基础类型是unicode编码的类型,在Python3.x才转化为基于unicode的字符串. 那么我们在Python2.x的学习中就会遇到各种各样的编码 ...

  8. oracle中创建函数行变列,oracle decode 函数实现行转列

    用decode函数,或者case when实现行转列 Oracle ----创建测试表create table student_score( name varchar2(20), subject va ...

  9. python中的encode()和decode()函数

    对于很多人来说,python的中字符转码是一件很头疼的事情,本来期望结果输出的是中文,结果来一段像这样\xe4\xbd\xa0\xe5\xa5\xbd像是乱码的字符串. 由于学python没多久,昨天 ...

  10. Oracle的DECODE函数

    DECODE函数 语法格式 decode(字段或字段的运算,值1,值2,值3) 语法说明 当字段或字段的运算的值,等于值1时,该函数返回值2,否则返回值3 值1,值2,值3也可以是表达式 SELECT ...

最新文章

  1. 原创:去繁存简,回归本源:微信小程序公开课信息分析《一》
  2. 树莓派 使用读卡器修改WIFI连接配置
  3. jupyter notebook使用技巧
  4. 10taskkill无法终止进程_?进程的状态转换
  5. python程序可以在任何安装了解释器_Python解释器新手安装教程
  6. cocos creator 打包apk_cocos creator android 编译踩坑
  7. 用python写三角形_python写个三角形的问题
  8. springBoot学习(二) 基础运行原理
  9. 通讯录 app 使用哪种协议查找服务器上存储的联系人?,uniapp通讯录查找
  10. 判断服务器是虚拟机还是物理机方式
  11. 目前选择四核处理器移动平台,是最佳时机吗?
  12. 阿铭Linux_网站维护学习笔记20190306
  13. JAVA求素数和模拟条件
  14. 【ASO优化】产品ASO优化的流程分解
  15. Storm并发度详解(转载)
  16. Java中Scanner的进阶---求和与求平均数
  17. 基于用户电影评价的分析预测
  18. 复制一个维基百科!—— 维基技术梳理
  19. 基于Html+Css+javascript的网页制作(旅游主题)
  20. vue - 下拉列表

热门文章

  1. java IO之字节流和字符流-OutputSteam和InputStream
  2. 毕业生的商业软件开发之路 ---- 商业软件开发基础
  3. file_get_contents打开中文名文件时出错
  4. zepto,kissy前端框架实现跨域
  5. 神马是敏捷?(3)——敏捷在中国的水土不服
  6. 安装java sdk,配置java环境
  7. 打印九九乘法表算法-java
  8. java socket 全双工客户端_Java Websocket实例【服务端与客户端实现全双工通讯】
  9. ListView嵌套ListView优化
  10. js高级学习笔记(b站尚硅谷)-9-原型链相关知识