我是靠谱客的博主 幽默乐曲,最近开发中收集的这篇文章主要介绍mysql按行循环_如何循环遍历表的所有行? (MySQL),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

因为循环的建议意味着对过程类型解决方案的请求。这是我的。

对从表取得的任何单个记录起作用的任何查询都可以包装在过程中,以使其通过表的每一行运行,如下所示:

DROP PROCEDURE IF EXISTS ROWPERROW;

DELIMITER ;;

然后这里的过程如你的示例(table_A和table_B用于清晰)

CREATE PROCEDURE ROWPERROW()

BEGIN

DECLARE n INT DEFAULT 0;

DECLARE i INT DEFAULT 0;

SELECT COUNT(*) FROM table_A INTO n;

SET i=0;

WHILE i

INSERT INTO table_B(ID, VAL) VALUES(ID, VAL) FROM table_A LIMIT i,1;

SET i = i + 1;

END WHILE;

End;

;;

然后不要忘记重置分隔符

DELIMITER ;

并运行新的过程

CALL ROWPERROW();

您可以在“INSERT INTO”行执行任何您喜欢的操作,我只是从您的示例请求中复制。

请注意,此处使用的“INSERT INTO”行反映问题中的行。根据对此答案的注释,您需要确保您的查询在语法上正确运行的SQL的哪个版本。

在简单的情况下,您的ID字段增加并从1开始,示例中的行可能变为:

INSERT INTO table_B(ID, VAL) VALUES(ID, VAL) FROM table_A WHERE ID=i;</

最后

以上就是幽默乐曲为你收集整理的mysql按行循环_如何循环遍历表的所有行? (MySQL)的全部内容,希望文章能够帮你解决mysql按行循环_如何循环遍历表的所有行? (MySQL)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部