博客
关于我
Oracle数据库第四课——PL/SQL中的条件控制
阅读量:798 次
发布时间:2023-04-15

本文共 1312 字,大约阅读时间需要 4 分钟。

PLSQL 条件控制结构

1. IF 语句

IF 语句是PLSQL中最基本的条件控制结构,主要有两种形式:IF-THEN 和 IF-THEN-ELSE。IF-THEN 用于执行特定条件满足时的操作,而 IF-THEN-ELSE 则用于在条件不满足时执行备用操作。

1.1 IF-THEN 语句

IF-THEN 语句的语法格式为:

IF CONDITION THEN    STATEMENT ;

其中,CONDITION 是一个布尔表达式,当其结果为 TRUE 时,程序会执行 STATEMENT 语句;否则,不执行 STATEMENT。

示例练习:比较两个数并输出较大者

以下是使用 IF-THEN 语句比较两个数的大小并输出较大者的示例代码:

declare  v_num1 number := 5;  v_num2 number := 3;begin  if v_num1 > v_num2 then    dbms_output.put_line('v_num1比较大');  end if;end;

执行上述代码后,SQL Window 的输出会显示“v_num1比较大”。

1.2 IF-THEN-ELSE 语句

IF-THEN-ELSE 语句在条件不满足时,会执行 ELSE 后面的语句。其语法格式为:

IF CONDITION THEN    STATEMENT ELSE    ELSE_STATEMENT ;

如果 CONDITION 为 FALSE 或 NULL,则会执行 ELSE_STATEMENT。

2. ELSEIF 语句

ELSEIF 语句用于在多个条件判断中逐一检查。语法格式为:

IF CONDITION1 THEN    STATEMENT1 ELSEIF CONDITION2 THEN    STATEMENT2 ELSE    STATEMENTn ;

当第一个条件不满足时,程序会检查第二个条件,依此类推,直到满足一个条件的语句被执行。若所有条件都不满足,则执行最后一个 ELSE 对应的语句。

3. CASE 语句

CASE 语句用于多个条件下的分支判断,相比 IF-THEN-ELSE 更适合多个条件分支的情况。常见的形式有简单 CASE 和 SEARCHED CASE。

简单 CASE 语句

简单 CASE 语句根据条件值的大小分配不同的语句,语法格式为:

CASE    WHEN CONDITION THEN STATEMENT WHEN ANOTHER_CONDITION THEN ANOTHER_STATEMENT ELSE DEFAULT_STATEMENT ;

如果没有任何条件满足,则会执行 ELSE 后面的语句。

SEARCHED CASE 语句

SEARCHED CASE 语句根据条件表达式的结果选择相应的语句,语法格式为:

SEARCH CASE_WHEN CONDITION AS VALUE FROM TABLE WHERE SEARCH_CONDITION ;

SEARCHED CASE 通常用于查询操作,根据条件值从表中查找对应的数据。

转载地址:http://cerfk.baihongyu.com/

你可能感兴趣的文章
mysqldump 参数--lock-tables浅析
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump 导出数据库中每张表的前n条
查看>>
mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
查看>>
Mysqldump参数大全(参数来源于mysql5.5.19源码)
查看>>
mysqldump备份时忽略某些表
查看>>
mysqldump实现数据备份及灾难恢复
查看>>
mysqldump数据库备份无法进行操作只能查询 --single-transaction
查看>>
mysqldump的一些用法
查看>>
mysqli
查看>>
MySQLIntegrityConstraintViolationException异常处理
查看>>
mysqlreport分析工具详解
查看>>
MySQLSyntaxErrorException: Unknown error 1146和SQLSyntaxErrorException: Unknown error 1146
查看>>
Mysql_Postgresql中_geometry数据操作_st_astext_GeomFromEWKT函数_在java中转换geometry的16进制数据---PostgreSQL工作笔记007
查看>>
mysql_real_connect 参数注意
查看>>
mysql_secure_installation初始化数据库报Access denied
查看>>
MySQL_西安11月销售昨日未上架的产品_20161212
查看>>
Mysql——深入浅出InnoDB底层原理
查看>>
MySQL“被动”性能优化汇总
查看>>
MySQL、HBase 和 Elasticsearch:特点与区别详解
查看>>