mysql 查询表字段作为其中参数插入到另一表的存储过程

表 m_sp 中一个字段sp_id,关联另一个m_sp_k 表,B表是后期加的,导致m_sp_k 表中没有关联A表的历史数据,如下存储过程便是解决所述问题。

查询结果循环遍历,结果值作为新的参数插入新表中。


create procedure proc_tmp()


BEGIN

declare done int default 0;
declare relationId VARCHAR(32); 

declare idCur cursor for select A.sp_id from m_sp as A;

declare continue handler for not FOUND set done = 1;

open idCur; 

/* 循环开始 */
REPEAT

fetch idCur into relationId;
if not done THEN
insert into m_sp_k(s_k_id, sp_id, s_k_key, s_k_sec, s_k_time, s_k_sta, s_k_tp)

values(REPLACE (UUID(), '-', ''), relationId, REPLACE (UUID(), '-', ''), REPLACE (UUID(), '-', ''), NOW(), 0,  0);
end if;
until done end repeat;

close idCur;
END



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值