在 MySQL 存储过程中设置条件
若要在存储过程中设置条件,在 MySQL 中使用 IF...ELSE。以下是 if-else 的语法 −
IF yourCondition then yourStatement1, ELSE yourStatement2, END IF;
让我们在一个存储过程中实现以上语法 −
mysql> DELIMITER // mysql> CREATE PROCEDURE IF_ELSE_DEMO(IN value int) -> BEGIN -> SET @val=value; -> IF @val > 10 then -> select concat(@val,' is greater than 10'); -> ELSE -> select concat(@val,' is less than 10 '); -> END IF; -> END; -> // Query OK, 0 rows affected (0.16 sec)
mysql> DELIMITER ;
现在你可以使用 CALL 命令调用存储过程 −
mysql> call IF_ELSE_DEMO(18);
这将产生以下输出 −
+------------------------------------+ | concat(@val,' is greater than 10') | +------------------------------------+ | 18 is greater than 10 | +------------------------------------+ 1 row in set (0.03 sec) Query OK, 0 rows affected (0.04 sec)
广告