`

Oracle函数介绍:decode

 
阅读更多
Sql代码

  select sum(DECODE(C810000125,'是',1,0))/COUNT(1) 合格率 FROM t581

  统计合格率,如果 C810000125这个字段为“是”结果1,不为是结果为0

  还可以这样写:

  Sql代码

  select sum(case when C810000125 = '是' then 1 else 0 end)/COUNT(1) 合格率 FROM t581

  含义解释:

  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

  decode(字段或字段的运算,值1,值2,值3)

  这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3

  当然值1,值2,值3也可以是表达式,这个函数使得某些sql语句简单了许多

  使用方法:

  1、比较大小

  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”,达到了取较小值的目的。

  2、此函数用在SQL语句中,功能介绍如下:

  Decode函数与一系列嵌套的 IF-THEN-ELSE语句相似。base_exp与compare1,compare2等等依次进行比较。如果base_exp和 第i 个compare项匹配,就返回第i 个对应的value 。如果base_exp与任何的compare值都不匹配,则返回default。每个compare值顺次求值,如果发现一个匹配,则剩下的compare值(如果还有的话)就都不再求值。一个为NULL的base_exp被认为和NULL compare值等价。如果需要的话,每一个compare值都被转换成和第一个compare 值相同的数据类型,这个数据类型也是返回值的类型。

  Decode函数在实际开发中非常的有用

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

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

  eg:

  select decode(dir,1,0,1) from a1_interval

  dir 的值是1变为0,是0则变为1

  比如我要查询某班男生和女生的数量分别是多少?

  通常我们这么写:

  select count(*) from 表 where 性别 = 男;

  select count(*) from 表 where 性别 = 女;

  要想显示到一起还要union一下,太麻烦了

  用decode呢,只需要一句话

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

分享到:
评论

相关推荐

    关于oracle decode函数的用法

    Oracle的DECODE函数是一种条件表达式,用于在SQL语句中执行类似于IF...THEN...ELSE逻辑判断的功能。它根据一个指定的表达式的值,与一系列的条件进行比较,如果匹配到某个条件,则返回对应的值;如果没有匹配任何...

    oracle 函数大全 参考函数 手册 速查 chm格式

    Oracle函数是数据库操作中的核心组成部分,它们允许开发人员和DBA执行各种计算、转换、查询和数据处理任务。手册中可能涵盖了以下几类函数: 1. 数学函数:如ABS(取绝对值)、MOD(取模)、ROUND(四舍五入)等,...

    Oracle中Decode()函数的有关用法

    ### Oracle中Decode()函数的有关用法 #### 一、Decode()函数简介 在Oracle数据库中,`DECODE()`函数是一种非常实用的功能,主要用于条件判断并返回特定的值。它提供了一种简单的方法来实现多分支逻辑判断,尤其是...

    Oracle中Decode()函数使用技巧

    下面将详细介绍Oracle Decode()函数的使用技巧。 1. **基本语法**: Decode()函数的基本语法如下: ``` DECODE(source, value1, result1, value2, result2, ..., default_value) ``` 其中,`source`是要检查的...

    oracle函数大全(分类成9个word文档)

    2. "oracle函数介绍(2) 非著名函数之单值函数.doc":这部分可能会介绍一些不那么常用但同样重要的单值函数,如DECODE()(根据条件返回不同值)、NVL()(处理NULL值)和TO_CHAR()(将数据转换为字符格式)。...

    oracle函数总结

    "Oracle函数总结" Oracle数据库提供了多种函数来处理不同的数据类型,包括字符函数、数值函数、日期函数、转换函数、通用函数等。下面将对这些函数进行详细的介绍。 字符函数 字符函数用于处理字符串数据,常用的...

    Oracle 函数大全

    Oracle数据库系统提供了大量的内置函数,这些函数可用于数据处理、数据查询、条件判断等多种场景。根据提供的文件内容,可以总结出Oracle中部分重要的函数以及其应用场景。 字符串函数 1. ASCII函数:返回指定字符...

    oracle系统内置函数大全

    Oracle数据库系统内置了大量函数,这些函数可以分为多个类别,例如字符函数、数字函数、日期函数、转换函数、分组函数以及其他辅助函数等。以下是对每个类别中一些常用函数的详细介绍: 字符函数 1. ASCII函数:...

    ORACLE函数大全与整理

    "函数整理.doc"和"ORACLE函数大全.doc"这两个文档应该包含了Oracle函数的详细说明、示例和应用场景,是学习和查阅Oracle函数的宝贵资料。通过深入学习这些函数,开发者可以更高效地编写SQL查询,优化数据库操作,...

    Oracle 中 decode 函数用法

    Oracle中的DECODE函数是一种非常实用的工具,它允许你在SQL查询中执行简单的条件判断和返回相应的值。这个函数类似于IF-THEN-ELSE语句的简写形式,减少了编写复杂逻辑的代码量,使得SQL语句更加简洁易读。 DECODE...

    oracle函数大全.doc

    Oracle 函数大全 Oracle 函数大全是 Oracle 数据库管理系统中的一系列函数,...本文档中还介绍了更多的单行函数和组函数,详细的讲解了每个函数的使用方法和示例代码,为开发者提供了一个 Oracle 函数大全的参考手册。

    Oracle函数速查手册

    这份"Oracle函数速查手册"旨在为用户提供一个全面、便捷的参考资源,无论是初学者还是经验丰富的开发者,都能从中受益。 Oracle函数分为多种类型,包括数值函数、字符串函数、日期时间函数、转换函数、系统信息函数...

    oracle函数大全

    oracle中的函数集合 SQL中的单记录函数、系统函数。Decode函数的语法结构如下: decode (expression, search_1, result_1) decode (expression, search_1, result_1, search_2, result_2) decode (expression, ...

    oracle函数大全(分类显示).zip

    "Oracle函数大全(分类显示)"这个资源显然是为了帮助开发者更好地理解和使用Oracle中的各种函数。下面,我们将详细介绍Oracle数据库中的一些主要函数类别及其应用场景。 1. **数值函数**: - `ROUND`:对数字进行四...

    ORACLE函数大全CHM

    这个“ORACLE函数大全”资源将详细介绍每个函数的语法、参数、返回值和使用示例,是学习和工作中不可或缺的工具。通过深入研究,你可以提高对Oracle数据库操作的理解和应用能力,提升开发和维护数据库的效率。记得...

    ORACLE 列转行 DECODE函数用法

    在Oracle数据库中,DECODE函数是一个非常实用的工具,它允许你在SQL查询中进行条件判断,将特定的值转换为其他值。DECODE函数在处理列转行的问题时,尤其适用于将多列数据合并到一行中,使得数据展示更加简洁明了。...

    Oracle常用的函数大全详细介绍

    以下是对Oracle数据库中几个核心函数的详细介绍: 1. **DECODE函数**:DECODE函数在查询中用于条件判断和返回值替换。其基本语法为`DECODE(expression, value1, result1, value2, result2, ..., default_result)`。...

    oracle函数速查手册

    "Oracle函数速查手册"是一份非常实用的参考资料,它涵盖了Oracle数据库中的各种函数,帮助用户快速查找并理解如何使用这些函数。在数据库管理、查询优化以及复杂数据处理时,这些函数起着至关重要的作用。 Oracle...

Global site tag (gtag.js) - Google Analytics