我想在MySQL中创建一个存储过程,其中一个输入参数需要是逗号分隔的整数列表。如何遍历每个整数并在其上运行更新语句?
我用谷歌搜索了它,但似乎找不到任何适用于MySQL的东西。
答案 0 :(得分:0)
嗯...好吧,底部有一个讨论here in the MySQL reference关于取一串逗号分隔的整数并对其进行替换以使其成为可以使用“IN”的东西它
我假设你的输入参数是VARCHAR。
答案 1 :(得分:0)
我明白了......
DECLARE i INT DEFAULT 0;
DECLARE curId VARCHAR(100);
WHILE SPLIT_STR(in_IdCommaDelimited, ',', i) != '' DO
SET curId = SPLIT_STR(in_IdCommaDelimited, ',', i);
UPDATE MyTable SET OrderNumber = i WHERE Id = curId;
SET i = i + 1;
END WHILE;