sql中的if else语句和if test 语句的区别
2017-11-07 11:26
232 查看
if else的几种表达方式
一、单个IF
1、
if a=… then
………
end if;
2、
if a=… then
……
else
….
end if;
二、多个IF
if a=.. then
……
elsif a=.. then
….
end if;
这里中间是“ELSIF”,而不是ELSE IF 。这里需要特别注意
复制代码
2、decode函数
DECODE的语法:
DECODE(value,if1,then1,if2,then2,if3,then3,…,else)
表示如果value等于if1时,DECODE函数的结果返回then1,…,如果不等于任何一个if值,则返回else。
注意:
只有oracle可以使用
3、case when
case when a=’1’then ‘xxxx’
when a=’2’ then ‘ssss’
else
‘zzzzz’
end as
注意点:
1、以CASE开头,以END结尾
2、分支中WHEN 后跟条件,THEN为显示结果
3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加
4、END 后跟别名
mysql和oracle都可以使用
区别
if else是对筛选后的值做判断并处理,用在select后面,而if-test 是对传入的参数做判断,用在where 语句后面。
参考文献:
if else的几种表达式参考至http://www.cnblogs.com/yangzhilong/archive/2013/04/03/2998282.html
一、单个IF
1、
if a=… then
………
end if;
2、
if a=… then
……
else
….
end if;
二、多个IF
if a=.. then
……
elsif a=.. then
….
end if;
这里中间是“ELSIF”,而不是ELSE IF 。这里需要特别注意
复制代码
2、decode函数
DECODE的语法:
DECODE(value,if1,then1,if2,then2,if3,then3,…,else)
表示如果value等于if1时,DECODE函数的结果返回then1,…,如果不等于任何一个if值,则返回else。
注意:
只有oracle可以使用
3、case when
case when a=’1’then ‘xxxx’
when a=’2’ then ‘ssss’
else
‘zzzzz’
end as
注意点:
1、以CASE开头,以END结尾
2、分支中WHEN 后跟条件,THEN为显示结果
3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加
4、END 后跟别名
mysql和oracle都可以使用
区别
if else是对筛选后的值做判断并处理,用在select后面,而if-test 是对传入的参数做判断,用在where 语句后面。
参考文献:
if else的几种表达式参考至http://www.cnblogs.com/yangzhilong/archive/2013/04/03/2998282.html
相关文章推荐
- sql语句if。。。else使用和exists使用
- (转)SQL语句Select Case和If else
- SQL中的IF ELSE(CASE语句的使用)
- SQL中的IF ELSE(CASE语句的使用)
- if(){}else和try{}catch{}语句的本质区别
- sql 里的 IF ELSE 语句用法
- SQL中的IF ELSE(CASE语句的使用)
- 【转】sql if else 语句
- SQL中的IF ELSE(CASE语句的使用)
- SQL中的IF ELSE(CASE语句的使用)
- 多个if语句和多个if else语句的区别
- SQL语句中如何使用含有if....else...判断语句
- 三元表达式和if-else语句的区别
- T-SQL判断语句(if...else)
- SQL中的IF ELSE(CASE语句的使用)
- sql中的判断语句 if...else的使用
- SQL 流程控制语句 之一 IF…ELSE语句
- 异常处理和IF else语句判断的区别?
- C#中的分支结构:if..else if 、if... else 和 switch ...case语句的区别
- MATALB——多if语句、多if..else语句和witch语句的用法及区别