文档章节

1.Oracle中decode()函数用法

J
 JunXing_W
发布于 2017/08/29 16:47
字数 342
阅读 3
收藏 0
点赞 0
评论 0

1.Oracle中decode函数用法

含义解释:
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

用法

(1)比较大小,取得较大值(较小值)

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

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

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

(2)结合Lpad函数,如何使主键的值自动加1并在前面补0

eg:select LPAD(decode(count(记录编号),0,1,max(to_number(记录编号)+1)),14,'0') 记录编号 from tetdmis

Ps:lpad函数从左边对字符串使用指定的字符进行填充,语法为lpad( string, padded_length, [ pad_string ] )

(3)分别返回一个表中性别为男和女的用户的个数:

select sum(decode(性别,男,1,0)) 男,sum(decode(性别,女,1,0)) 女 from 表

(4)在查询语句中把空值输出为0

<1>select nvl(null,0) from dual 或

<2>select decode(cloum_name,null,0,cloum_name) from dual;

Ps:网上学习加上自己遇到问题整理,非100%原创。

© 著作权归作者所有

共有 人打赏支持
J
粉丝 0
博文 1
码字总数 342
作品 0
大连
Oracle 生僻关键词用法汇总

1.Oracle 中connect by / prior /start with用法 可以通过connect by / prior / start with 得到指定数据开始的所有上级父目录或者所有下级子目录 下面通过两个简单的例子学习一下两种用法。...

kimyeongnam ⋅ 2015/10/09 ⋅ 0

Oracle的union、union all 与函数decode【2010-06-09】

两者都是对记录集操作,把来自许多SELECT语句的结果组合到一个结果集合中。不过值得注意的一点是,类型的一致性,既要满足,列于每个SELECT语句的对应位置的被选择的列应具有相同的类型。(例...

搜呗 ⋅ 2010/07/21 ⋅ 0

Oracle 判断语句

首先是decode函数。 decode的用法是 DECODE(controlvalue,value1,result1[,value2,result2…][,defaultresult]); 参数说明: control _value 试图处理的数值。可以是数据库中表的某一列,DEC...

吐槽的达达仔 ⋅ 2014/12/05 ⋅ 0

Oracle学习日记(5)

case when的用法 1.CASE WHEN表达式有两种形式: 代码如下:---简单的case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ---CASE搜索函数 CASE WHEN sex='1' THEN '...

SnO_opy ⋅ 2014/03/13 ⋅ 0

Oracle CASE WHEN 用法介绍

CASE WHEN 表达式有两种形式 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' E......

陆朋 ⋅ 2013/10/17 ⋅ 0

1. CASE WHEN 表达式有两种形式

--简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASEWHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 2. CASE WHEN ......

李永china ⋅ 2016/09/23 ⋅ 0

Oracle CASE WHEN 用法介绍

CASE WHEN 表达式有两种形式 --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' E......

zh119893 ⋅ 2013/06/19 ⋅ 0

oracle中的decode的使用

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

Surjur ⋅ 2015/02/27 ⋅ 0

Oracle DECODE函数的用法详解

DECODE 中的if-then-else逻辑 在逻辑编程中,经常用到If – Then –Else 进行逻辑判断。在DECODE的语法中,实际上就是这样的逻辑处理过程。它的语法如下: DECODE(value, if1, then1, if2,th...

zh151832 ⋅ 2015/11/24 ⋅ 0

oracle decode函数的用法

oracle decode函数,不管查询的结果是否满足‘PRIMARY’,参数中的select语句还是会执行的,通过查看执行计划就知道 set autotrace traceonly decode函数等价于cash when语句,只不过当条件比...

会说话的鱼 ⋅ 04/12 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

R计算IV

参考文章 #读取文件 rawdata = read.csv("/path/to/csv/file",header=T) colnames(rawdata)[18] <- "y" //重命名因变量y #数据分区 训练集测试集 trainIdx <- sample(nrow(rawdata), round(......

火力全開 ⋅ 12分钟前 ⋅ 0

SQL老司机,在SQL中计算 array & map & json数据

摘要: 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primitive类型的数据。 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primi...

阿里云云栖社区 ⋅ 12分钟前 ⋅ 0

SQL老司机,在SQL中计算 array & map & json数据

摘要: 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primitive类型的数据。 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primi...

猫耳m ⋅ 23分钟前 ⋅ 0

关于ireport自定义变量类型为list的时候

自己摸石头过河,我真的应该去趟市中心图书馆,借本真正靠谱的教材 网上的东西,只有0.01%是有用的,还有0.99%是垃圾,剩下的99%是垃圾的复制品。。 哎!~ 问题是这样的,报表带sql,从db中获...

炑炑milina ⋅ 23分钟前 ⋅ 0

Spring mvc ContextLoaderListener 原理解析

对于熟悉Spring MVC功能,首先应从web.xml 开始,在web.xml 文件中我们需要配置一个监听器 ContextLoaderListener,如下。 <!-- 加载spring上下文信息,最主要的功能是解析applicationContex...

轨迹_ ⋅ 24分钟前 ⋅ 0

阿里云发布企业数字化及上云外包平台服务:阿里云众包平台

摘要: 阿里云正式发布旗下众包平台业务(网址:https://zhongbao.aliyun.com/),支持包括:网站定制开发,APP、电商系统等软件开发,商标、商品LOGO、VI、产品包装设计、营销推广、大数据人...

阿里云官方博客 ⋅ 25分钟前 ⋅ 0

Redis安装异常解决办法

官网地址:http://redis.io/ 官网下载地址:http://redis.io/download 1. 下载Redis源码(tar.gz),并上传到Linux 2. 解压缩包:tar zxvf redis-2.8.17.tar.gz 3. 进入解压缩后的文件夹:c...

slagga ⋅ 30分钟前 ⋅ 0

006. 深入JVM学习—年轻代

1. 年轻代图片 年轻代(Young)属于JVM堆内存空间的一个组成部分 所有使用关键字new新实例化的对象一定会在伊甸园区进行保存,而对于存活区保存的一定是已经在伊甸园区存在一段时间并且经过了...

影狼 ⋅ 31分钟前 ⋅ 0

如何成为一个合格的程序员

偶尔的,我会被人问道:如何成为一名优秀的程序员,更或者,如何成为一名程序员。每次人们问起,我都力图给出不同的答案。因此,我的答案是各种各样的。下面就是我认为的成为一名优秀的程序员...

柳猫 ⋅ 32分钟前 ⋅ 0

cups error_log日志暴增

日志内容 File \"/usr/lib/cups/notifier/dbus\" has insecure permissions 解决(未验证适用范围) sudo service cups stopsudo rm /etc/cups/subscriptions.conf*sudo rm -r /var/cac......

一介码夫_Hum ⋅ 35分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部