1.decode函数

SELECT ID,NAME,DECODE(LEVER,1,'教授',2,'副教授',3,'导师','讲师') POSITION,(SELECT CLASSNUM FROM CLASS T WHERE T.NUM = S.NUM) NUM FROM TEACHER S WHERE T.LEVER IN (1,3);

上句sql中的decode函数的用法逻辑是这样理解的:

IF(LEVER==1) THEN

RETURN '教授'(翻译值1)

ELSE IF(LEVER==2) THEN

RETURN '副教授'(翻译值2)

ELSE IF(LEVER==3) THEN

RETURN '导师'

ELSE

RETURN '讲师'(默认值)

其中,默认值可有可无

2.NVL函数

SELECT ID,PERSONNAME,NVL(BOOKNUM,0) AS BOOKNUM,NVL(PERSONNUM,0) AS PERSONNUM FROM BOOKSTORE

上句sql的NVL()函数可以这样理解:

IF (BOOKNUM !=NULL) THEN

RETURN BOOKNUM

ELSE

RETURN 0

3.NVL2函数

SELECT ID,NVL2(BOOKNUM,BOOKNUM,NVL2(PERSONNUM,PERSONNUM,0) AS PERSONNUM FROM BOOKSTORE

上句sql的NVL2()函数可以这样理解

IF (BOOKNUM !=NULL) THEN

RETURN BOOKNAME

ELSE IF(BOOKNUM == NULL)

RETURN 0

值得注意的是,BOOKNAME和0类型不同的话,0会转换成BOOKNAME的类型,转换不了,则会报错

4.NULLIF函数

SELECT E.NAME,E.JOB_ID,J.JOB_ID,NULLIF(E.JOB_ID,J.JOB_ID) AS SAME FROM EMPLOYEES E,JOB_HISTORY J

WHERE E.EMPLOYEE_ID = J.EMPLOYEE_ID ORDER BY NAME;

上句sql的NULLIF()函数可以这样理解

IF(E.JOB_ID == J.JOB_ID) THEN

RETURN NULL

ELSE

RETURN E.JOB_ID

5.SUM函数

SELECT ID,CLASSNAME,SUM(NVL(RESULTS,0)) AS RESULTS,SUM(DECODE(TYPE,'50',1)) AS CLASSTYPE FROM CLASS

上句sql的SUM()函数主要是用来求和括号里表达式返回的值,或表中某个字段的总和

6.SUBSTR函数

SELECT SUBSTR(CLASSNAME,0) AS CLASSNAME,SUBSTR("今天天气是晴天!",2) FROM CLASS;

上句sql的SUBSTR()函数主要是用来截取字符串的一部分的,如SUBSTR(CLASSNAME,0)表示从第0个字节开始截取CLASSNAME字符串,SUBSTR("今天天气是晴天",2)表示从第三个字节开始截取"今天天气是晴天"中的两个字节,结果是"天气".

7.TO_CHAR函数

SELECT S.ID,S.NAME,TO_CHAR(S.TIME,'yyyy-mm-dd hh24:mi:ss'),TO_CHAR(S.MONEY,'999') AS MONEY

FROM STUDENT S

上句sql的SUBSTR()函数主要是将数值型或日期型字段转换成字符型,方便做类似模糊查询的操作

oracle if 使用函数,Oracle 常见函数用法相关推荐

  1. oracle触发器函数,oracle 存储过程、函数和触发器用法实例详解

    本文实例讲述了oracle 存储过程.函数和触发器用法.分享给大家供大家参考,具体如下: 一.存储过程和存储函数 指存储在数据库中供所有用户程序调用的子程序叫存储过程.存储函数. 创建存储过程 用CR ...

  2. oracle关于字符串函数,Oracle字符串处理函数

    Oracle字符串处理函数 Oracle字符串处理函数 2008年10月18日 星期六 23:45 项目中有涉及存储过程对字符串的处理,所以就将在网上查找到的资料汇总,做一个信息拼接式的总结. 以下信 ...

  3. oracle中treat函数,Oracle 函数概览

    -- Start Oracle 内置的函数真的是很多,要精通每个函数几乎是不可能的,所以本文并不打算介绍每个函数的具体用法,而是提供一个概览,让您了解每个函数的功能,这样,当你感觉你需要某些功能的函数 ...

  4. oracle的连接函数,Oracle各种连接函数总结

    1.前言 Oracle可用连接函数会介绍以下几个 Oracle列转行函数 Listagg() strcat() wmsys.wm_concat() 2.Oracle列转行函数 Listagg() 2. ...

  5. oracle中转换函数,Oracle中的转换函数

    Oracle中的转换函数有三个,分别为to_char(),to_date(),to_number() 1.to_char()的用法 格式化当前的日期时间 select sysdate,to_char( ...

  6. oracle查看时间戳函数,oracle数据库实现获取时间戳的无参函数

    oracle数据库实现获取时间戳的无参函数 代码如下所示: CREATE OR REPLACE FUNCTION GETMSTIMESTAMP RETURN NUMBER AS MSTIMESTAMP ...

  7. oracle中各种函数,oracle中常用函数大全

    1.数值型常用函数 函数 返回值 样例 显示 ceil(n) 大于或等于数值n的最小整数 select ceil(10.6) from dual; 11 floor(n) 小于等于数值n的最大整数 s ...

  8. oracle中lead函数,oracle lead()函数 | 学步园

    ead()是一个分析函数,适用于oracle 8i以后的版本, 使用这个函数,你可以一次性从表中查询多条记录, 而不需要进行表的自连接. 返回值:返回与当前行偏离offset行的列值. 语法: lea ...

  9. oracle对象权限 函数,oracle的系统和对象权限

    alter any cluster 修改任意簇的权限 alter any index 修改任意索引的权限 alter any role 修改任意角色的权限 alter any sequence 修改任 ...

  10. oracle调用MySQL函数,Oracle的INSTR函数MySQL实现

    Oracle的INSTR函数MySQL实现 一个迁移项目遇到的,MySQL的instr函数只能查找子串是否在父串中,没法按照出现的次数进行查找.这里我自己写了一个,以便迁移.当然我这里仅仅针对的是迁移 ...

最新文章

  1. 【神经网络】(7) 迁移学习(CNN-MobileNetV2),案例:乳腺癌二分类
  2. 斗图必备!AI实战各种沙雕表情包分门别类~
  3. 梅宏院士:软件定义的未来——万物皆可互联,一切均可编程 | CNCC 2017
  4. 阐述Linux动态库的显式调用
  5. Java多线程同步Synchronized深入解析
  6. 从Windows到Linux
  7. 去除img之间的空白
  8. HTML 4.01 event 事件
  9. Tomcat-部署多个项目(不同端口)
  10. Java并发编程实战~Balking模式
  11. 例7.8 分析下列程序的输出结果。《计算机等级考试二级C++语言》
  12. 气势汹涌,天津设立千亿级AI基金;刘强东否认会因AI开除一半员工
  13. 软件设计师考试内容纲要
  14. 3D打印Gcode文件命令详解
  15. tftp命令文件传输
  16. 以读者角度走进RFID打造的智慧图书馆
  17. 出去计算机写保护,Win7复制文件提示磁盘被写保护,请去掉写保护或另一张磁盘怎么解除...
  18. 3.1 电压频率变换器
  19. 愿所有我和码农们 printf(“前程似锦”)
  20. 使用 Metasploit 渗透局域网 Windows 设备

热门文章

  1. 计算机英语讲课笔记02
  2. Scala学习笔记06:自定义控制结构
  3. Okhttp3用法案例:查询小车余额
  4. 使用Windows版Redis
  5. 提出建议Do you want to..._44
  6. 在linux系统中如何查看cpu,Linux中如何查看CPU的信息
  7. 全方位了解超宽带信号高速采集记录回放系统
  8. java中字节码_聊聊Java的字节码
  9. Martin Odersky Scala编程公开课 第三周作业
  10. mac 卸载 mysql su_UBUNTU 彻底删除 MYSQL 然后重装 MYSQL