DB2 使用Case语句
来源:互联网 发布:淘宝店铺被删除保证金 编辑:程序博客网 时间:2024/06/04 20:04
我们在编写SQL语句时,常常遇到希望SQL能够按条件执行的情况。这里的条件不是指Where子句中的条件,而是指让DB2根据条件执行SQL的语句块。大多数情况下我们可以使用case来实现。
(1):CASE
(2):CASE 表达式1
上面的WHEN可以重复多次,就像C中的SWITCH ..CASE的表达
eg1:处理被0除
SELECT
CASE
WHEN fileld1=0 THEN 0
ELSE fileld2/field1
END
FROM
eg2:字段值对应转换
SELECT ORDNO,CUSNAM,SHIPDATE,CASE
FROM FILE
eg3:获取月份的名字:上面的例子
SELECT ORDNO,CUSNO,
FROM FILE
例如,我们希望从员工表中查出员工的工资情况,如果小于20000,则标志为low,20000到50000间为middle,否则为high。一般大家会想到先取出工资数据然后在Java代码中做判断,但我们也可以在SQL中完成上述操作。如下例:
select empno, sex, salary,case when salary < 20000 then 'low' when salary >=20000 and salary <50000 then 'middle' else 'high'end as salaryclassfrom employee
类似的,如果想在SQL语句中把性别翻译成文字,也可以用case实现,注意这两条SQL语句使用了不同的case表达式写法:
select empno,case sex when 'M' then 'male' when 'F' then 'female' else 'invalid'end,salaryfrom employee
Case不但能够在Select子句中使用,在From子句和Where子句中同样可以使用。下面是在Where子句中使用的一个例子:
select empno, sex, agefrom employeewherecase sex when 'M' then 55 when 'F' then 50end > age
- DB2 使用Case语句
- DB2中的CASE使用
- DB2 CASE/IF 条件控制语句
- Case语句使用技巧
- sql 使用case语句
- Delphi case 语句使用
- case...when语句使用
- case语句的使用
- case语句使用举例
- Mysql中使用case语句
- Sql 语句中case使用
- ORACLE使用case语句_hanCSDN_20130514
- switch case语句的使用
- mysql case语句的使用
- oracle case 语句使用(基本)
- DB2 Merge 语句的使用
- db2 select中使用case替代行转列操作
- 针对选择语句select case的使用!
- vs2008 无法远程连接调试程序的原因之一
- Struts2+Jquery+ajax+json结合应用
- PHP向MSSQL2008中写入数据,中文乱码
- maven springmvc环境配置
- 浏览器打印去掉页眉页脚的方法
- DB2 使用Case语句
- hadoop深入研究:(八)——codec
- 怎么样取消博客图片加水印的功能?
- spring在ssh框架中到底起到什么作用
- 找实习总结
- 使用Fluent Nhibernate 查询问题 超级慢
- socket阻塞,非阻塞
- [IOI2000] 回文词
- 旧题再做(再涨工资)