1、Oracle case when 用法1、以 CASE 开头,以 END 结尾2、分支中 WHEN 后跟条件,THEN 为显示结果3、ELSE 为除此之外的默认情况,类似于高级语言程序中 switch case 的 default,可以不加4、END 后跟别名CASE 有两种表达式:1. 简单 CASE 表达式,使用表达式确定返回值.语法:CASE search_expressionWHEN expression1 THEN result1WHEN expression2 THEN result2.WHEN expressionN THEN resultNELSE default_result
2、END例:select product_id,product_type_id,case product_type_idwhen 1 then 'Book'when 2 then 'Video'when 3 then 'DVD'when 4 then 'CD'else 'Magazine'endfrom products结果:PRODUCT_ID PRODUCT_TYPE_ID CASEPROD- - -1 1 Book2 1 Book3 2 Video4 2 Video5 2 Video6 2 Video7 3 D
3、VD8 3 DVD9 4 CD10 4 CD11 4 CD12 Magazine12 rows selected.2. 搜索 CASE 表达式,使用条件确定返回值.语法:CASEWHEN condition1 THEN result1WHEN condistion2 THEN result2.WHEN condistionN THEN resultNELSE default_resultEND例:select product_id,product_type_id,casewhen product_type_id=1 then 'Book'when product_type_id=2 then 'Video'when product_type_id=3 then 'DVD'when product_type_id=4 then 'CD'else 'Magazine'endfrom products结果与上相同.