MySql存储过程―6、循环_MySQL
程序员文章站
2022-06-17 18:49:14
...
bitsCN.com
MySql存储过程—6、循环 相关链接:MySql存储过程—1、SQL存储过程的基础知识http:///database/201208/148790.html;MySql存储过程—2、第一个MySql存储过程的建立http:///database/201208/148791.html;MySql存储过程—3、变量http:///database/201208/149069.html;MySql存储过程—4、参数http:///database/201208/149113.html;MySql存储过程—5、逻辑判断,条件控制http:///database/201208/149282.html 在MySql的存储过程中可使用的循环有三种:WHILE、REPEAT、LOOP 1、WHILE WHILE的格式是这样的:[sql] WHILE expression DO Statements END WHILE 下面是个例子[sql] DELIMITER $$ DROP PROCEDURE IF EXISTS `test`.`WhileLoopProc` $$ CREATE PROCEDURE `test`.`WhileLoopProc` () BEGIN DECLARE x INT; DECLARE str VARCHAR(255); SET x = 1; SET str = ''; WHILE x 10 THEN LEAVE loop_label; END IF; SET x = x + 1; IF (x mod 2) THEN ITERATE loop_label; ELSE SET str = CONCAT(str,x,','); END IF; END LOOP; SELECT str; END $$ DELIMITER ; 上面代码输出10以内的偶数,用逗号分隔。这里注意到x>10的时候就LEAVE掉,如果遇到奇数则ITERATE,奇数对2取模为1,表示true bitsCN.com
MySql存储过程—6、循环 相关链接:MySql存储过程—1、SQL存储过程的基础知识http:///database/201208/148790.html;MySql存储过程—2、第一个MySql存储过程的建立http:///database/201208/148791.html;MySql存储过程—3、变量http:///database/201208/149069.html;MySql存储过程—4、参数http:///database/201208/149113.html;MySql存储过程—5、逻辑判断,条件控制http:///database/201208/149282.html 在MySql的存储过程中可使用的循环有三种:WHILE、REPEAT、LOOP 1、WHILE WHILE的格式是这样的:[sql] WHILE expression DO Statements END WHILE 下面是个例子[sql] DELIMITER $$ DROP PROCEDURE IF EXISTS `test`.`WhileLoopProc` $$ CREATE PROCEDURE `test`.`WhileLoopProc` () BEGIN DECLARE x INT; DECLARE str VARCHAR(255); SET x = 1; SET str = ''; WHILE x 10 THEN LEAVE loop_label; END IF; SET x = x + 1; IF (x mod 2) THEN ITERATE loop_label; ELSE SET str = CONCAT(str,x,','); END IF; END LOOP; SELECT str; END $$ DELIMITER ; 上面代码输出10以内的偶数,用逗号分隔。这里注意到x>10的时候就LEAVE掉,如果遇到奇数则ITERATE,奇数对2取模为1,表示true bitsCN.com
上一篇: 专访链家网平台架构师吕毅