条件分支语句 ? IF 语句: –IF-THEN-END IF –IF-THEN-ELSE-END IF –IF-THEN-ELSIF-END IF –case语句: ?
循环语句 –
loop
语法:- </pre><pre name="code" class="plain">IF condition THEN
- statements;
- [ELSIF condition
- THEN statements;]
- [ELSE statements;]
- END IF;
condition 是一个布尔变量或表达式 (值为TRUE, FALSE或NULL) (仅当表达式为TRUE时执行
THEN 之后的语句)。
THEN 是一个子句,与前面的布尔表达式相联系。
statements 是 若干个PL/SQL 或 SQL 语句 (语句中可能还有嵌套的IF 语句)。
ELSIF 这个关键字将引入一个布尔表达式 (如果第一个条件结果为FALSE或NULL,ELSEIF 关键
字将引出附加的选择条件) 。
ELSE 如果IF条件不成立则执行ELSE关键字后面的语句。
更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12 NULL的处理- DECLARE ? x number(2):= 5;
- y number(2):= NULL;
- BEGIN
- IF x != y THEN
- dbms_output.put_line(100);
- ELSE
- dbms_output.put_line(200);
- END IF;
- END;
任何包含空值的算术表达式结果均为空值。
仅当变量值为NULL时,IS NULL 的返回值是 TRUE 。
可把空变量当作空字符串来连接表达式。
- DECLARE
- x number(2):=null;
- y number(2):=null;
- begin
- if x!=y then
- dbms_output.put_line(100);
- else
- dbms_output.put_line(200);
- end if;
- end;
-
-
-
- DECLARE
- x number(2):=null;
- y number(2):=null;
- begin
- if x=y then
- dbms_output.put_line(100);
- else
- dbms_output.put_line(200);
- end if;
- end;
都输出200
- DECLARE
- x number(2):=5;
- y number(2):=null;
- begin
- if nvl(x,0)!=nvl(y,0) then
- dbms_output.put_line(100);
- else
- dbms_output.put_line(200);
- end if;
- end;
输出100
逻辑表:MySQL主从同步问题RedHat Linux上Oracle 11g从oradata恢复数据相关资讯 Oracle入门教程
- 使用SQLT来构建Oracle测试用例 (08/28/2014 06:17:41)
- Oracle AUTOTRACE 统计信息 (02/18/2013 08:25:40)
- Linux Oracle服务启动&停止脚本与 (12/16/2012 14:42:37)
| - Oracle入门教程:把表和索引放在不 (07/13/2013 11:21:40)
- Oracle直接路径加载--append的深度 (02/07/2013 08:26:36)
- Oracle Connect By用法 (12/16/2012 13:36:10)
|
本文评论 查看全部评论 (0)