mysql和Oracle都可以用
--条件表达式 --给EMP表中的员工起中文名字 select e.ename, case e.ename when 'SMITH' then '曹贼' when 'ALLEN' then '大耳贼' when 'WARD' then '诸葛小儿' else '无名' end from emp e;else可以省略,不加else条件时:
select e.ename, case e.ename when 'SMITH' then '曹贼' when 'ALLEN' then '大耳贼' when 'WARD' then '诸葛小儿' end from emp e;其他都为null
--判断如果EMP表中员工工资高于3000显示高收入,低于3000但高于1500中等收入 --低于1500低收入 select e.sal, case when e.sal>3000 then '高收入' when e.sal>1500 then '中等收入' else '低收入' end from emp e;Oracle专用
--oracle专用条件表达式 select e.ename, decode(e.ename, 'SMITH', '曹贼', 'ALLEN', '大耳贼', 'WARD', '诸葛小儿', '无名') from emp e; --oracle中除了起别名都用单引号 --oracle专用条件表达式 select e.ename, decode(e.ename, 'SMITH', '曹贼', 'ALLEN', '大耳贼', 'WARD', '诸葛小儿', '无名')"别名" from emp e;别名也可以不加双引号