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值,则返回空值。

以下是一个简单测试,用于说明Decode函数的用法:

SQL> create table t as select username,default_tablespace,lock_date from dba_users;

Table created

SQL> select * from t;

USERNAME                       DEFAULT_TABLESPACE             LOCK_DATE

------------------------------ ------------------------------ -----------

SYS                            SYSTEM

SYSTEM                         SYSTEM

DBSNMP                         SYSTEM

SCOTT                          SYSTEM

OUTLN                          SYSTEM                         2007-7-30 1

WMSYS                          SYSTEM                         2007-7-30 1

ORDSYS                         SYSTEM                         2007-7-30 1

ORDPLUGINS                     SYSTEM                         2007-7-30 1

MDSYS                          SYSTEM                         2007-7-30 1

CTXSYS                         DRSYS                          2007-7-30 1

XDB                            XDB                            2007-7-30 1

ANONYMOUS                      XDB                            2007-7-30 1

WKSYS                          DRSYS                          2007-7-30 1

WKPROXY                        DRSYS                          2007-7-30 1

ODM                            ODM                            2007-7-30 1

ODM_MTR                        ODM                            2007-7-30 1

OLAPSYS                        CWMLITE                        2007-7-30 1

RMAN                           TOOLS                          2007-7-30 1

HR                             EXAMPLE                        2007-7-30 1

OE                             EXAMPLE                        2007-7-30 1

USERNAME                       DEFAULT_TABLESPACE             LOCK_DATE

------------------------------ ------------------------------ -----------

PM                             EXAMPLE                        2007-7-30 1

SH                             EXAMPLE                        2007-7-30 1

QS_ADM                         EXAMPLE                        2007-7-30 1

QS                             EXAMPLE                        2007-7-30 1

QS_WS                          EXAMPLE                        2007-7-30 1

QS_ES                          EXAMPLE                        2007-7-30 1

QS_OS                          EXAMPLE                        2007-7-30 1

QS_CBADM                       EXAMPLE                        2007-7-30 1

QS_CB                          EXAMPLE                        2007-7-30 1

QS_CS                          EXAMPLE                        2007-7-30 1

30 rows selected

SQL> select username,decode(lock_date,null,'unlocked') status from t;

USERNAME                       STATUS

------------------------------ --------

SYS                            unlocked

SYSTEM                         unlocked

DBSNMP                         unlocked

SCOTT                          unlocked

OUTLN

WMSYS

ORDSYS

ORDPLUGINS

MDSYS

CTXSYS

XDB

ANONYMOUS

WKSYS

WKPROXY

ODM

ODM_MTR

OLAPSYS

RMAN

HR

OE

USERNAME                       STATUS

------------------------------ --------

PM

SH

QS_ADM

QS

QS_WS

QS_ES

QS_OS

QS_CBADM

QS_CB

QS_CS

30 rows selected

oracle decode一个值对应多个值,如何使用Oracle的Decode函数进行多值判断相关推荐

  1. oracle 插入一个语句,oracle如何通过1条语句插入多个值 oracle通过1条语句插入多个值方法...

    本篇文章小编给大家分享一下oracle通过1条语句插入多个值方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 在实践过程中遇到一个问题, 我想往数据库插入多条数据时,使用 ...

  2. oracle 行转列后列名,Oracle 多行转多列,列值转为列名

    前段时间做调查问卷,客户创建自定义问卷内容,包括题目和选项内容; 之后需要导出问卷明细,,,,麻烦来咯 于是到网上到处搜索,没有直接结果;于是又找各种相似的,,终于功夫不负有心人 然后最终自己写出来了 ...

  3. oracle一列多行转一行多列表示,Oracle 多行转多列,列值转为列名

    前段时间做调查问卷,客户创建自定义问卷内容,包括题目和选项内容; 之后需要导出问卷明细,,,,麻烦来咯 于是到网上到处搜索,没有直接结果;于是又找各种相似的,,终于功夫不负有心人 然后最终自己写出来了 ...

  4. mysql请输入一个有效类型的长度值_MySQL数据库基础(三)——SQL语言

    MySQL数据库基础(三)--SQL语言 发布时间:2020-05-19 16:40:05 来源:51CTO 阅读:10596 作者:天山老妖S MySQL数据库基础(三)--SQL语言 一.SQL语 ...

  5. Oracle.DataAccess.Client.OracleCommand”的类型初始值设定项引发异常

    Oracle.ManagedDataAccess.dll 连接Oracle数据库不需要安装客户端 最开始,连接Oracle 数据是需要安装客户端的,ado.net 后来由于微软未来不再支持 Syste ...

  6. oracle中使用sys_connect_by_path进行表中行值连接

    一.最原始的表说明 CREATE TABLE DATADIC (DATAID NUMBER NOT NULL,NAME VARCHAR2(100 BYTE),VALUE VARCHAR2(100 BY ...

  7. 根据条件返回相应值 decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)...

    1 decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值) 2 [功能]根据条件返回相应值 3 [参数]c1, c2, ...,cn,字符型/数值型/日期型,必须类型相同或 ...

  8. 添加列oracle默认值,Oracle 11g增加列,并带默认值的新特性

    在Oracle 11g以前,如果要在一个大表中增加一列,并设置默认值,那将是一个非常悲剧的事情.有些时候不得不选择在线重定义功能来实现 Oracle 11g增加列,并带默认值的新特性 [日期:2014 ...

  9. Oracle EBS 基础概念:值集@多层从属值集

    参考: https://wenku.baidu.com/view/aa5de31b0066f5335a8121bc.html 需求:客户地址的省/市/ 区可为任意输入值,需要定义一个省/市/ 区的三级 ...

  10. Oracle创建序列后无法使用序列初始值

    Oracle创建序列后无法使用序列初始值 在使用oracle数据库时,遇到了序列的一个问题,即在创建一个序列后,无法获得该序列的第一个值,如下: 首先创建序列 create sequence seq_ ...

最新文章

  1. 【错误记录】Visual Studio 编译 C++ 代码报错 ( To disable deprecation, use _CRT_SECURE_NO_WARNINGS. )
  2. SPringBoot+mybatis 框架搭建例子
  3. springboot集成spring security实现登录和注销
  4. redis管道pipeline的运用
  5. GNU make manual 翻译( 一百五十九)
  6. python的md5
  7. binding.filter(filter) will trigger OData request to backend
  8. go 二进制程序守护_图解 Go 程序是怎样跑起来的
  9. English trip -- VC(情景课)1 F Another view
  10. 模板引擎-1-基础概念和是使用小案例
  11. Java中关于创建文件,Java实现 PDF、Word、Excel、Html、XML互转及与图片互相转化、图片像素调节,待更新整理中
  12. 转一篇张欣写的Ubuntu扩展安装
  13. SQL索引碎片监控看板——C#编写辅助程序员运维的工具
  14. c语言中反比例函数定义,初三数学反比例函数的定义知识点
  15. 北京理工大学:《Python语言程序设计》____笔记整理
  16. PDF文件中的图片如何删除?分享两种删除方法
  17. 2021年危险化学品经营单位安全管理人员考试报名及危险化学品经营单位安全管理人员找解析
  18. Eclipse里看到project 存在向上或者向下的箭头
  19. 一键命令测试云主机的带宽
  20. UTC和本地时间互相转换

热门文章

  1. java交通工具的类继承代码_Java作业-交通工具继承
  2. struts启动时加载_iOS优化篇之App启动时间优化
  3. 国际顶刊《PNAS》:爱发朋友圈的人,更容易长寿
  4. Python:列表前加*的作用
  5. 零基础入门学习Python(5)Python的数据类型
  6. 遗传:细菌、真菌和动植物的泛基因组研究进展
  7. Nature:植物叶际微生物组稳态维持机制
  8. 扩增子图表解读6韦恩图:比较组间共有和特有OTU或分类单元
  9. python使用statsmodels包中的tsaplots函数和lags参数可视化时间序列数据指定滞后位置个数(级别)以前的所有自相关性(plot the autocorrelation)
  10. R语言ggplot2可视化:可视化饼图分面图并在图中添加数据标签