如何使用MySQL储存过程查询内容再批量循环分表插入
文章来源地址https://www.toymoban.com/diary/sql/219.html
1、先看基础结构
drop procedure if exists fenbiao;#如果存在储存过程则删除 delimiter $$ #创建一个储存过程 create procedure fenbiao() begin select count(*) from 表名; #这里放Sql语句【下面2,就是这中间的sql 语句】 end$$ delimiter; #执行存储过程插入数据 call fenbiao();
文章来源:https://www.toymoban.com/diary/sql/219.html
2、SQL语句
declare a int default 1000;//设置变量 declare flag int default 0;//设置变量,默认0的时候执行 declare org_id int(10);// 设置表里 declare s_list cursor for SELECT `id` as "org_id" FROM `表名` ORDER BY `id` ASC LIMIT 0,3; //测试从这个表里面拿出3条,并且只能ID,赋值为设置的变量 declare continue handler for not found set flag=1; // 如果while完成,则设置为1,1 表示结束 open s_list; // 打开列表 fetch s_list into org_id ; // 从列表里面获取 org_id while flag <> 1 do // flag != 1 的时候继续执行 set @f_id = org_id; // 把ID 赋值给一个变量 set @title = (SELECT title FROM `表名` WHERE id = @f_id); // 设置一个插入值是从数据库来的。 // INSRTY 这里放插入语句 VALUES 如 VALUES (@f_id, @title) fetch s_list into f_id; end while; close s_list; //关闭泪飙
到此这篇关于使用MySQL储存过程查询内容再批量循环分表插入或者将查询结果插入到另一张表的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!