`
T240178168
  • 浏览: 365587 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Oracle--------Decode()

阅读更多

  DECODE函数的作用:它可以将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。

  区别于SQL的其它函数,DECODE函数还能识别和操作空值。

  语法如下:

  DECODE(control_value,value1,result1[,value2,result2…][,default_result]);

  control _value

  试图处理的数值。DECODE函数将该数值与后面的一系列的偶序相比较,以决定返回值。

  value1

  是一组成序偶的数值。如果输入数值与之匹配成功,则相应的结果将被返回。对应一个空的返回值,可以使用关键字NULL于之对应

  result1

  是一组成序偶的结果值。

  default_result 未能与任何一个值匹配时,函数返回的默认值。

  示例如下:

  select decode( x , 1 , ‘x is 1 ’, 2 , ‘x is 2 ’, ‘others’) from dual

  当x等于1时,则返回‘x is 1’。

  当x等于2时,则返回‘x is 2’。

  否则,返回others’。

  在需要比较2个值的时候,我们可以配合SIGN()函数一起使用。

  SELECT DECODE( SIGN(5 -6), 1 'Is Positive', -1, 'Is Nagative', 'Is Zero')

  同样,也可以用CASE实现:

  SELECT CASE SIGN(5 - 6)

  WHEN 1 THEN 'Is Positive'

  WHEN -1 THEN 'Is Nagative'

  ELSE 'Is Zero' END

  FROM DUAL

  另外,大家还可以在Order by中使用Decode。

  例:表table_subject,有subject_name列。要求按照:语、数、外的顺序进行排序。这时,就可以非常轻松的使用Decode完成要求了。

  select * from table_subject order by decode(subject_name, '语文', 1, '数学', 2, , '外语',3)
分享到:
评论

相关推荐

    Oracle-Decode()函数和CASE语句的比较

    Oracle数据库中的`Decode()`函数和`CASE`语句都是用于条件判断和数据转换的重要工具,它们各有特点,适用场景也有所不同。以下是对这两个功能的详细比较。 首先,`Decode()`函数是一个简化的条件表达式,它允许你在...

    oracle --timestamp

    根据提供的标题、描述、标签及部分内容,我们可以了解到这段文本主要涉及Oracle数据库中处理时间戳(`TIMESTAMP`)的相关操作。接下来将详细解释这些内容所包含的关键知识点。 ### 关键知识点解析 #### 1. `...

    关于oracle decode函数的用法

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

    Oracle----相关常用命令

    - **`select decode(1,1,'1',2,'2',3,'3') from dual;`**:类似于switch-case结构,根据条件返回不同的值。 - 上述SQL函数提供了丰富的字符串处理、日期处理以及数学运算功能,极大地方便了数据处理和分析工作。 ##...

    oracle-funcation.rar_oracle

    - `DECODE(column, value1, result1, value2, result2, ..., default_value)`: 根据column的值返回相应的结果。 6. 聚合函数: - `COUNT(*)`: 统计表中所有行的数量。 - `SUM(column)`: 计算列中所有数值的总和...

    Oracle-SQL-function.rar_oracle_oracle ppt

    - `DECODE()`: 提供简单的条件判断,类似于IF-THEN-ELSE语句。 10. **连接与子查询** - `JOIN`: 结合两个或多个表的数据。 - 子查询: 在查询中嵌套另一个查询,用于获取满足特定条件的数据。 通过深入学习这些...

    Oracle-SQL.zip_oracle

    - `DECODE(expression, value1, result1, value2, result2, ..., default_result)`:如果expression等于value1,返回result1,依此类推,如果没有匹配项,则返回default_result。 7. **分组与排序**: - `GROUP ...

    数据库-oracle-学习之路.docx

    Oracle数据库是一种广泛应用于企业级应用的高性能关系型数据库系统,其强大的功能和稳定性深受开发者和管理员的喜爱。在Oracle的学习之路上,了解并掌握以下几个关键知识点至关重要: 1. **数据库基础**: - ...

    oracle的decode函数

    ### Oracle的DECODE函数详解 #### 一、DECODE函数简介 在Oracle数据库中,`DECODE`函数是一种非常实用的条件判断函数,其功能类似于编程语言中的`IF`语句。通过比较输入值与一系列预设值,该函数能够根据匹配情况...

    oracle-secret:EncodeDecode塞尔达传说古老的Oracle和季节的Oracle的秘密

    Oracle秘密 编码/解码《塞尔达传说》,《 Oracle历代传说》和《 Oracle四季》的机密。 安装 $ npm install --save oracle-secret 用法 加载一个GameSecret import { GameSecret } from 'oracle-secret' ; const ...

    华为面试题(附答案)Oracle-DBA数据库管理员JAVA程序员架构师必看.docx

    【华为面试题(附答案)Oracle-DBA数据库管理员JAVA程序员架构师必看.docx】这份文档涵盖了数据库管理和Java编程相关的面试知识点,主要集中在Oracle数据库的管理和使用上。以下是相关知识点的详细说明: 1. **数据库...

    华为面试题(附答案)Oracle-DBA数据库管理员JAVA程序员架构师必看.doc (2).pdf

    9. DECODE函数: - 一种条件判断函数,用于替代IF...ELSE结构,根据指定条件返回不同结果。 10. DELETE与TRUNCATE的区别: - DELETE支持回滚,TRUNCATE不支持。 - TRUNCATE更快,不触发表达式和触发器。 - ...

    Oracle-SQL优化.docx

    Oracle SQL 优化 Oracle SQL 优化是指对 Oracle 数据库中的 SQL 语句进行优化,以提高查询效率、减少资源占用和提高系统性能。下面是 Oracle SQL 优化的相关知识点: 一、 SQL 语句编写注意问题 1.1 IS NULL 与 ...

    华为面试题(附答案)Oracle-DBA数据库管理员JAVA程序员架构师必看.doc (2).docx

    - **DECODE函数**:一种条件判断函数,用于简化条件分支逻辑,可以进行等于、不等于等比较操作。 - **DELETE与TRUNCATE的区别**:TRUNCATE更快,不触发DELETE触发器,无法撤销,且不占用事务,适用于清空表;...

    Oracle-SQL优化(内部资料).docx

    ### Oracle SQL性能优化关键知识点 #### 一、选择正确的基础表 在进行多表连接查询时,选择正确的基础表对于提高查询效率至关重要。基础表的选择原则通常基于表的数据量大小和连接方式。文档中提到了两种不同的连接...

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

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

    Oracle-sql语句收集整理大全.pdf

    根据给定文件的信息,我们可以总结出一系列与Oracle SQL语句相关的知识点。这些知识点涉及了基本的数据操作、查询优化以及复杂的连接查询等。 ### 一、基础数据操作 #### 1. 复制表结构(不含数据) - **SQL语句**...

    Oracle中Decode()函数使用技巧

    Oracle中的Decode()函数是数据库查询时非常实用的一个工具,它允许你在SQL语句中实现简单的条件判断,类似于IF-THEN-ELSE逻辑。这个函数在处理数据时提供了灵活性,避免了复杂的CASE语句,使得代码更加简洁易读。...

    华为面试题(附答案)Oracle-DBA数据库管理员JAVA程序员架构师必看.doc.pdf

    本文主要涉及的是Oracle数据库管理相关的知识点,适合DBA(数据库管理员)、JAVA程序员和架构师阅读。以下是对标题和描述中所提及内容的详细解释: 1. **表空间管理方式**: - 数据字典管理方式:由Oracle系统自动...

Global site tag (gtag.js) - Google Analytics