• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

oracleif的用法是什么意思

武飞扬头像
PHP中文网
帮助12

oracle中if的用法是什么

IF语句可以有3种使用方法,如下表:

学新通技术网

1.1 IF-THEN组合

IF-THEN语法的常见格式如下:

IF condition
THEN
      ...执行的语句...
END IF;

其中,condition是一个布尔类型的变量、常量,其值可能存在三种情况:TRUE,FALSE,NULL

例如存在这样的条件 IF sal > 1000; dbms_output.put_line('null');END IF;,这个条件可能返回TRUE,FALSE,但是当sal的值是NULL的时候,也就是:IF NULL > 1000,返回的值就是NULL

上述情况为了避免NULL值产生,我们可以使用IF sal > 1000 OR sal is null; dbms_output.put_line('null');END IF;来避免,也可以使用空值处理函数处理

1.2 IF-THEN-ELSE组合

语法格式如下:

IF condition
THEN
     ... TRUE sequence of executeable statements ... 
ELSE
    ... FALSE/NULL sequence of executeable statements ...  
END IF;

1.3 IF-THEN-ELSIF组合

要特别注意:此处是ELSIF不是ELSEIF,写成ELSE IF也是不行的。

语法格式如下:

IF condition-1
THEN
      statements-1
ELSIF condition-N
THEN
      statements-N
[ELSE
      else-statements]
END IF;

2.短路求值

PL/SQL使用短路求值方法,也就是说PL/SQL不需要对一个IF语句中的所有表达式都去求值。比如,当对下面这个IF语句中的表达式求值的时候,如果第一个条件是FALSE或者NULL,则PL/SQL会停止对表达式继续求值,立即跳转到ELSE分支上;

IF condition1 AND condition2
THEN
      ...
ELSE
      ...
END IF;

根据短路求值原理,存在多个条件时,一定要将会消耗大量的CPU和内存资源的条件放到整个条件集的最后。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tangbhbhh
系列文章
更多 icon
同类精品
更多 icon
继续加载