在MySQL Workbench中循环SQL查询

时间:2015-10-15 15:20:44

标签: mysql sql loops workbench

尝试在工作台中运行一个查询,该查询将循环遍历所有site_ids并针对每个查询测试我的查询。这应该很容易,但我错过了一些东西。

SET @user_id = 449;
SET @getsites.site_id = 11;
WHILE(@getsites.site_id < 535) DO
     SELECT routine goes here
     SET @getsites.site_id = @getsites.site_id + 1;
END WHILE;

1 个答案:

答案 0 :(得分:0)

我正在共享一个proc块,你可以根据你的要求进行转换。

DELIMITER $$
USE test$$ -- database name
DROP PROCEDURE IF EXISTS proc_name$$
CREATE PROCEDURE proc_name()
BEGIN
DECLARE user_id INT(3) DEFAULT 0;
DECLARE site_id INT(4) DEFAULT 0;
SET site_id = 11;
REPEAT
    SELECT 1; -- routine goes here [execute your logic here]
    SET site_id = site_id + 1;
UNTIL site_id < 535 END REPEAT;
SELECT "Proc completed" AS Result;
END$$

DELIMITER ;

首先尝试使用SQL,如果不可能,请尝试使用。