zoukankan      html  css  js  c++  java
  • Oracle的查询-条件表达式

    给emp表中员工起中文名

    select e.ename from emp e;

    select e.ename,
           case e.ename
              when 'SMITH' then '曹贼'
                when 'ALLEN' then '大耳贼'
                  when 'WARD' then '诸葛小儿'
                    else '无名'
                      end
    from emp e;

    --条件表达式的通用写法,mysql和oracle都可用


    接下来省略else

    select e.ename,
           case e.ename
              when 'SMITH' then '曹贼'
                when 'ALLEN' then '大耳贼'
                  when 'WARD' then '诸葛小儿'
                    --else '无名'
                      end
    from emp e;


    判断emp表中员工工资,如果高于3000显示高收入,如果高于1500低于3000显示中等收入,其余显示低收入

    select e.sal,
           case 
              when e.sal>3000 then '高收入'
                when e.sal>1500 then '中等收入'
                    else '低收入'
                      end
    from emp e;


    --oracle专用条件表达式
    select e.ename,
            decode(e.ename,
               'SMITH',  '曹贼',
                 'ALLEN',  '大耳贼',
                   'WARD',  '诸葛小儿',
                     '无名')                  
    from emp e;

    --oracle专用条件表达式
    select e.ename,
            decode(e.ename,
               'SMITH',  '曹贼',
                 'ALLEN',  '大耳贼',
                   'WARD',  '诸葛小儿',
                     '无名') 中文名                 
    from emp e;

     Oracle中,除了起别名,都用单引号' '

  • 相关阅读:
    联考20200520 T2 函数
    联考20200520 T1 石子游戏
    模拟赛T2 中继系统
    模拟赛T2 仙人掌毒题
    BZOJ3462 DZY Loves Math II
    20200129模拟赛T1 string
    BZOJ1316 树上的询问
    BZOJ4559 成绩比较
    JZOJ4238 纪念碑
    BZOJ 2648 世界树
  • 原文地址:https://www.cnblogs.com/Sm1lence/p/11426669.html
Copyright © 2011-2022 走看看