【Oracle】if/else功能的实现的3种写法

一、标准sql规范

(1)

		if a=... then 
		...
		end if;

(2)

		if a=... then
		...
		elsif a=... then     //这里是elsif,不是else if.
		...
		end if;

二、decode函数

	DECODE(VALUE, IF1, THEN1, IF2, THEN2, IF3, THEN3, ......, OTHER);
表示如果value等于IF1时,DECODE函数的结果返回THEN1,......,如果不等于任何一个if值,则返回OTHER。

三、CASE WHEN

	CASE WHEN type_ = 'C001' THEN '因病'  
		 WHEN type_ = 'C002' THEN '因残'  
		 WHEN type_ = 'C003' THEN '因婚'  
		 WHEN type_ = 'C004' THEN '因学'
	ELSE
		'其他'
	END NAME

注意: 
1、以CASE开头,以END结尾 
2、分支中WHEN 后跟条件,THEN为显示结果 
3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加 4、END 后跟别名




你可能感兴趣的:(开发零碎问题,数据库)