MySQL函数的作用域

来源:互联网 发布:java链表声明 编辑:程序博客网 时间:2024/05/16 10:18
MySQL函数的作用域
1:MySQL中的作用域同js中的作用域一样,全局变量在任何地方都可以使用,局部变量只能在函数内部中使用
2:SQL语法
1:全局变量
使用set关键字定义 使用@符合标志
2:局部变量
使用declare关键字声明,没有@符合,所有的局部变量必须函数体前声明
3:案例Demo
业务需求:1-指定数值之间的和,要求5的倍数不加
DELIMITER $$
CREATE FUNCTION method1(int_1 INT) RETURNS INT
BEGIN
--声明变量,
DECLARE i INT DEFAULT 1; --循环变量
DECLARE res INT DEFAULT 0; --定义结束变量可以有属性
--循环判断
mywhile:WHILE i<=int_1 DO
IF i%5=0 THEN --相加判断
--修改循环条件
SET i=i+1;
--不符合条件的:循环重新来过
ITERATE mywhile;
END IF;
SET res=res+i; --相加
--改变循环变量
SET i=i+1;
END WHILE;
--返回结果
RETURN res;
END $$
DELIMITER ;