`
liujiawinds
  • 浏览: 132256 次
  • 性别: 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_用法

    详细讲解了case、when的用法.ASE表达式可以在SQL中实现if-then-else型的逻辑,而不必使用PL/SQL。CASE的工作方式与DECODE()类似,但应该使用CASE,因为它与ANSI兼容。

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

    主要介绍了Oracle用decode函数或CASE-WHEN实现自定义排序功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

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

    但是在遇到需要组合条件进行统计时,有时却不如case when 或者另建视图好用。 可是有时就想用DECODE,咋办? 这里给大家介绍一下DECODE如何实现组合条件查询,一句SQL查询一张中国式报表。 (本文的示例,在实际业务...

    mysql仿oracle的decode效果查询

    以下代码在MYSQL中测试通过,MSSQL... #mysql执行 select sum(case when c = ‘1’ then A else B end) from tmp #oracle执行 select sum(decode(c,’1′,a,b)) from tmp #普通联合查询 select sum(d) from ( select

    oracle sql of extracting table structure

    then all_c.data_type || decode(all_c.data_precision,0,'',NULL,'','(' || to_char(all_c.data_precision)) || decode(all_c.data_precision,0,'',NULL,'', decode(all_c.data_scale,0,'',NULL,'', ',' || to_...

    Oracle事例

    20.oracle8中扩充了group by rollup和cube的操作。有时候省了你好多功夫的。 下面的语句可以进行总计 select region_code,count(*) from aicbs.acc_woff_notify group by rollup(region_code); <2> 对第1个字段...

    oracle获取上一旬的开始时间和结束时间的实现函数

    代码如下: — 获取上旬开始... select case decode(trunc((to_char(v_rq, ‘dd’) – 1) / 10), 0, ‘上旬’, 1, ‘中旬’, ‘下旬’) when ‘上旬’ then –返回上个月的下旬 to_char(add_months(v_rq, -1), ‘yyyyMM

    SQL培训第一期

    属性不依赖于其它非主属性,确保数据表中的每一列数据都和主键直接相关,而不能间接相关,即要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。 1.5.3.2 举例 党员表 党员Id 党员姓名 组织Code 符合3NF ...

    php.ini-development

    Directive names are *case sensitive* - foo=bar is different from FOO=bar. ; Directives are variables used to configure PHP or PHP extensions. ; There is no name validation. If ...

Global site tag (gtag.js) - Google Analytics