MySQL存储过程从另外两个表中取数据存整合其他数据保存在一张新的表里

该博客介绍了如何根据业务需求,利用MySQL存储过程从A表获取唯一的NAME字段,同时从B表获取ID和NAME的多条记录,然后将这些数据整合并保存到一个新的表C中。
摘要由CSDN通过智能技术生成

业务需求:

通过传入的参数x 从A表拿A.NAME(唯一一条记录),从B表拿B.ID,B.NAME(多条记录),保存至C表。

DROP PROCEDURE IF EXISTS P_AUTO_SCHEDULING;

CREATE PROCEDURE P_AUTO_SCHEDULING(IN v_hosptialId VARCHAR(50))
BEGIN

DECLARE i INT DEFAULT 0;
DECLARE v_days INT DEFAULT 30;
DECLARE	v_uuid VARCHAR(32);
DECLARE v_curdate date;
DECLARE	v_weekTypeid VARCHAR(15);
DECLARE v_hosptialName VARCHAR(255);
DECLARE v_orgId VARCHAR(50);
DECLARE v_orgName VARCHAR(255);
DECLARE orgid_hosp VARCHAR(50);
DECLARE orgid VARCHAR(50);
DECLARE orgname_hosp VARCHAR(255);
DECLARE orgname VARCHAR(255);

DECLARE idx INT DEFAULT 0;    /*是否达到记录的末尾控制变量*/
DECLARE cur_1 CURSOR FOR SELECT 
	t1.orgid_hosp AS orgid_hosp,
	t2.orgid AS orgid,
	t1.orgname_hosp AS orgname_hosp,
	t2.orgname AS orgname
FROM
	t_hosp t1,
	t_org t2
WHERE
	t1.orgid_hosp = t2.orgId_hosp
AND t1.orgid_hosp = v_hosptialId;

DECLARE CONTINUE HANDLER FOR NOT FOUND SET idx = 1;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值