`
liujiawinds
  • 浏览: 136239 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

oracle中decode 和case when的用法对比

阅读更多

下面例子使用的是oracle自带的emp表

decode使用方法如下:

 

DECODE(col|expression, search1, result1
                                  [, search2, result2,...,]
                                  [, searchn, resultn,...,]
                                  [, default])
例子:
select comm,decode(comm,0,'很低'
                      ,300,'低',
                      1400,'高',
                      '一般')"testdecode" from emp;
 case when使用方法如下:
CASE expr WHEN comparison_expr1 THEN return_expr1
         [WHEN comparison_expr2 THEN return_expr2
          WHEN comparison_exprn THEN return_exprn
          ELSE else_expr]
END
例子:
select comm,(
case when comm=0 then '很低'
     when comm=300 then '低'
     when comm=1400 then '高'
     else '一般'
end)"testcase"
from emp;
 
这两种方式都能得到如下结果:

COMM                   testcase 
---------------------- -------- 
                       一般     
300                    低       
500                    一般     
                       一般     
1400                   高       
                       一般     
                       一般     
                       一般     
                       一般     
0                      很低     
                       一般     
                       一般     
                       一般     
                       一般 

分享到:
评论

相关推荐

    Oracle_case_when_用法

    在 Oracle 数据库中,`CASE WHEN` 表达式提供了一种在 SQL 查询中实现条件判断的方法,这使得开发人员能够在不使用 PL/SQL 的情况下编写更为灵活和复杂的查询语句。`CASE WHEN` 与 `DECODE()` 函数相似,但因其符合 ...

    decode函数与case when 的妙用

    在数据库管理和SQL编程中,`DECODE`函数和`CASE WHEN`语句是两种非常重要的逻辑判断工具,它们常用于处理条件分支和数据转换。在这篇文章中,我们将深入探讨这两种方法的用途、区别以及如何巧妙地运用它们。 首先,...

    ORACLE 列转行 DECODE函数用法

    在实际工作中,你可能还需要结合其他SQL函数,如CASE WHEN或NVL,来进一步增强DECODE的功能。例如,当你需要处理可能的NULL值时,NVL函数可以提供一个默认值,防止因NULL而导致的结果异常。 总之,Oracle的DECODE...

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

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

    Oracle用decode函数或CASE-WHEN实现自定义排序

    `DECODE`函数和`CASE-WHEN`语句都是实现这一目标的有效工具。根据实际的业务需求和性能考虑,可以选择合适的方法进行应用。在编写SQL时,确保理解并充分利用这些高级功能,可以提升代码的可读性和执行效率。希望本文...

    oracle case when 语句的用法详解

    综上所述,Oracle的CASE WHEN语句是数据库查询中处理条件分支的重要工具,可以在SELECT、WHERE和GROUP BY等不同场景中使用,提供了一种灵活的方式来构造复杂的逻辑判断。了解并熟练运用CASE WHEN,能够显著提升SQL...

    oracle的decode函数

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

    [数据库] Oracle使用CASE判断解决多值问题1

    为了简化这一过程,我们可以利用Oracle SQL的内置函数,如DECODE和CASE WHEN,直接在数据库层面进行处理。 首先,尝试使用DECODE函数。DECODE函数允许我们根据指定的条件返回不同的值。例如,DECODE(ZY_TYPE, '国家...

    ORACLE DECODE函数在中国式报表统计查询中的组合条件实现

    然而,在面对复杂的多条件组合统计需求时,`DECODE`函数的应用可能会变得相对繁琐,这时往往更倾向于使用`CASE WHEN`语句或创建视图的方法来解决。不过,如果出于特定原因需要坚持使用`DECODE`函数,那么了解如何...

    ORACLE DB2开发中的对比

    本文将深入探讨ORACLE和DB2两种主流数据库在开发过程中的对比,重点分析它们在不同场景下的语法差异。 首先,我们来看如何在ORACLE和DB2中选取前N条记录。在ORACLE中,可以使用`rownum`来限制查询结果的数量,例如`...

    mysql仿oracle的decode效果查询

    在 MySQL 中,我们使用了 `CASE WHEN` 结构,而在 Oracle 中则使用了 `DECODE` 函数。这两种方法都计算了当 `c` 等于 '1' 时 `a` 的总和,以及 `c` 不等于 '1' 时 `b` 的总和。 另外,还有一种更直接的联合查询方法...

    Oracle与Mysql差异说明.doc

    3. DECODE 和 CASE WHEN:Oracle 的 DECODE 函数在条件判断中提供简洁的语法,但在 MySQL 中,你需要使用 CASE WHEN THEN END 结构来实现相同功能。 4. TO_DATE 和 STR_TO_DATE:Oracle 的 TO_DATE 函数将字符串...

    mysql与oracle差异总结

    MySql 中的 CASE WHEN 语句可以替换 DECODE 函数。MySql 中的 TEXT 等同于 Oracle 中的 LONG 函数。 13. 日期函数 MySql 中的 EXTRACT 函数可以提取日期的年、月、日等信息,而 Oracle 需要使用 TO_CHAR 函数来...

    oracle sql 行列转换

    DECODE函数在Oracle SQL中用于执行基于列表的条件判断,类似于多路分支的CASE语句。DECODE函数可以简化CASE语句,尤其是在条件较少的情况下。在给定的内容中,DECODE函数被用来实现与CASE语句相同的效果: ```sql ...

    利用ORACLE实现数据的抽样

    在Oracle中,可先使用`CASE WHEN`或`DECODE`函数进行分层,再结合`SAMPLE`函数来实现。 ### 二、Oracle中的抽样技巧 Oracle提供了内置的`SAMPLE`函数,可以直接用于实现抽样。例如: ```sql SELECT * FROM (SELECT...

    oracle_sql使用.docx

    例如,DECODE函数可以用于根据特定条件返回不同值,而CASE WHEN则更灵活,可以处理多个条件分支。例如: ```sql SELECT MAX(DECODE(INPUT_NAME, 'if1', INPUT_VALUE, 'if2', then2, DEFAULT)) FROM table; ``` ...

    Oracle高级操作函数学习笔记

    在提供的内容中,通过DECODE函数实现了工资的区间判断显示,使用CASE语句完成了加薪规则的计算,还演示了如何使用UNION、INTERSECT和MINUS进行集合操作。这些知识点展示了Oracle在数据处理方面的灵活性和高效性,...

Global site tag (gtag.js) - Google Analytics