MYSQL 存储过程 IF ELSE 讲解
时间: 2023-11-09 22:07:15 浏览: 42
MySQL 存储过程中的 IF ELSE 语句可用于根据条件执行不同的代码块。语法如下:
```
IF expression THEN
statements;
ELSEIF expression THEN
statements;
ELSE
statements;
END IF;
```
其中,expression 为条件表达式,statements 为要执行的代码块。
例子:
```
CREATE PROCEDURE check_age(age INT)
BEGIN
IF age >= 18 THEN
SELECT '成年人';
ELSE
SELECT '未成年人';
END IF;
END;
```
该存储过程接收一个年龄参数,根据年龄是否大于等于 18 输出不同的结果。可以通过 CALL 命令调用该存储过程:
```
CALL check_age(20); --输出“成年人”
CALL check_age(16); --输出“未成年人”
```
相关问题
mysql存储过程if else if
MySQL存储过程中的条件判断可以使用IF、ELSEIF和ELSE语句来实现。下面是一个示例:
```
DELIMITER //
CREATE PROCEDURE example_procedure()
BEGIN
DECLARE num INT;
SET num = 10;
IF num > 0 THEN
-- 执行第一个条件满足的代码
SELECT 'Number is positive';
ELSEIF num = 0 THEN
-- 执行第二个条件满足的代码
SELECT 'Number is zero';
ELSE
-- 执行所有条件都不满足的代码
SELECT 'Number is negative';
END IF;
END //
DELIMITER ;
```
在上述示例中,我们创建了一个名为`example_procedure`的存储过程,其中声明了一个变量`num`并将其赋值为10。接下来,使用IF、ELSEIF和ELSE语句对`num`进行条件判断,并根据不同的条件执行相应的代码块。
请注意,我们在存储过程的定义之前使用`DELIMITER`语句将默认的分隔符改为`//`,以便正确定义存储过程。在存储过程定义结束后,我们使用另一个`DELIMITER`语句将分隔符改回默认值。
要调用这个存储过程,可以使用以下语句:
```
CALL example_procedure();
```
这将执行存储过程并返回相应的结果。根据上述示例中的赋值,它将返回"Number is positive"。
mysql存储过程if elseif
MySQL存储过程中的IF ELSEIF ELSE语句可以用来根据条件执行一组SQL语句。它的语法结构如下所示:
```
IF condition1 THEN
statement1;
ELSEIF condition2 THEN
statement2;
...
ELSE
statementN;
END IF;
```
其中,condition1、condition2等是表达式,可以根据需要使用文字、变量、运算符和函数来组合。这些表达式可以返回TRUE、FALSE或NULL中的一个值。根据条件的不同,可以执行不同的SQL语句。