1、DECODE的语法:DECODE(value,if1,then1,if2,then2,if3,then3,...,else)。表示假设value 等于if1时,DECODE函数的结果返回then1,...,假设不等于不论什么一个if值。则返回else

2、该函数的含义例如以下:
  IF 条件=值1 THEN
      RETURN(翻译值1)
  ELSIF 条件=值2 THEN
      RETURN(翻译值2)
      ......
  ELSIF 条件=值n THEN
      RETURN(翻译值n)
  ELSE
      RETURN(缺省值)
  END IF

3、比较大小

  select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值

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

  比如:

  变量1=10,变量2=20

  则sign(变量1-变量2)返回-1。decode解码结果为“变量1”。达到了取较小值的目的。

4、有学生成绩表student,如今要用decode函数实现下面几个功能:成绩>85,显示优秀;>70显示良好;>60及格;否则是不及格。

  如果student的编号为id,成绩为score,那么:
  select id, decode(sign(score-85),1,'优秀',0,'优秀',-1, 
  decode(sign(score-70),1,'良好',0,'良好',-1, 
  decode(sign(score-60),1,'及格',0,'及格',-1,'不及格'))) 
  from student。

5、Decode函数的语法结构例如以下:
  decode (expression, search_1, result_1)
  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)
  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值,则返回空值。

原文:https://www.cnblogs.com/mengfanrong/p/5206458.html

【转载】oracle中decode函数用法的更多相关文章

  1. Oracle 中 decode 函数用法

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

  2. Oracle 中 decode 函数用法(转)

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

  3. oracle 中decode函数用法

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

  4. oracle中decode函数用法及应用

    用法 1.decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 相当于if else 那种方式. 2.decode(字段或字段的运算,值1,值2,值3) 当字段或字段的运 ...

  5. Oracle 中 decode 函数用法(字段A,B, C,A不为空则取A,否则取B,B为空则取C)

    –decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值) SELECT DECODE(TEMP.SCORE, ‘A’, ‘90-100’, ‘B’, ‘80-89’, ‘C’, ...

  6. [转载]Oracle中TO_NUMBER()函数的用法

    1 用法简介TO_NUMBER函数()是Oracle中常用的类型转换函数之一,主要是将字符串转换为数值型的格式,与TO_CHAR()函数的作用正好相反. To_number函数的格式如下: To_nu ...

  7. Oracle中decode函数 列变成行

    create table t_class(c_Id  number(10) primary key ,stuName varchar2(50),  --人名c_Name varchar2(50),   ...

  8. oracle中decode的用法(例子)

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

  9. oracle中nvl函数用法

    1.返回两个字段中非空字段的值,第一个字段非空,返回第一个字段的值,第二个字段值为null,则返回第二个字段的值,如果都为null 则返回null. select nvl(a,b) from tabl ...

随机推荐

  1. 微信小程序中concat 和push的区别

    push和concat二者功能很相像,但有两点区别. 先看如下例子: var arr = []; arr.push(1); arr.push(2); arr.push([3, 4]) arr.push ...

  2. Airtest 支持的手机,系统等环境

    据个人经验,Airtest 支持的以下设备会跑的比较666 Android 平台 华为荣耀9青春版 版本:8.0.0 型号:LLD-AL10 评价:自动化运行最6 华为 荣耀10青春版 版本:9.0. ...

  3. leaflet的使用

    LeafLet 简单使用 WangKane 关注  0.4 2018.12.03 16:08 字数 887 阅读 3773评论 0喜欢 4 Leaflet 使用 最近在Angular项目中,用到了地图 ...

  4. HTML禁用一块区域点击

    style="pointer-events: none;" 此方法可以禁止鼠标点击指定区域,但是对于键盘事件无法屏蔽,最好禁用一下键盘事件,如:tab

  5. 【java设计模式】-07适配器模式

    适配器模式 定义: 将一个类的接口转换成客户希望的另外一个接口.适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 类型: 结构型模式 应用实例: 1.JAVA JDK 1.1 提供 ...

  6. 查看window用户登录日志

    查看window用户登录日志 能追踪Windows系统登录时间的三种方法 Windows登录日志详解 事件ID=4798应该对应的是锁定操作(Win+L)

  7. Sublime Text 3中配置Python3的开发环境

    在Tools-->Build System-->New Build System 之后弹出如下界面: 将其内容修改为 代码: { "cmd": ["D:/so ...

  8. 【零基础】入门51单片机图文教程(Proteus+Keil)

    参考资料: https://www.jianshu.com/p/88dfc09e7403 https://blog.csdn.net/feit2417/article/details/80890218 ...

  9. 数据库 | SQL查询&LIMIT的用法

    body{ text-align:left; width:80%; margin:10px 100px; } 前言 select top n 形式的语句可以获取查询的前几个记录,但是 mysql没有此 ...

  10. 生成 XML 文档时出错。

    找来找去,在CSDN 里看到高手解答了. 原来 WebService 传递参数时,不能使用 DataTable 如果需要使用DataTable  那就要用 DataSet  包装起来. 如果担心数据太 ...