mysql 两表合并成一个表

顺序结构程序设计现有两个单位sdeg和zbut,sdeg表结构为:编号,字符型,宽度为4,主索引;姓名,字符型,宽度为8;部门,字符型,宽度为10;zbut表结构为:编号... 顺序结构程序设计
现有两个单位sdeg和zbut,
sdeg表结构为:编号,字符型,宽度为4,主索引;姓名,字符型,宽度为8;部门,字符型,宽度为10;
zbut表结构为:编号,字符型,宽度为4,主索引;姓名,字符型,宽度为8;部门,字符型,宽度为10;

要求将两个表中表的数据合成一个表sdut,表的结构不变,写出对应的存储过程(提示:注意两个表的主索引)
展开
 我来答
rob3
推荐于2016-05-03 · TA获得超过105个赞
知道小有建树答主
回答量:83
采纳率:100%
帮助的人:49.6万
展开全部
假设sdeg和zbug的表结构 都是
ID varchar(4) primary key,
Name varchar(8),
Dept varchar(10),

存储过程如下

CREATE PROCEDURE table_combine()
BEGIN

#第一步把sdeg和zbug两个表进行联合输出到临时表tmp_tab中
create temporary table tmp_tab select * from sdeg union select * from zbut;

#第二步创建结果表sdut,并创建主键
create table sdut(ID varchar(4) primary key, Name varchar(8),Dept varchar(10));

#第三步把临时表里面的重复数据过滤并写入sdut
INSERT INTO sdut(ID,Name,Dept) SELECT distinct ID,Name,Dept FROM tmp_tab;

#drop临时表
drop table tmp_tab;
END
程序员大胡子
2014-06-06 · TA获得超过178个赞
知道小有建树答主
回答量:357
采纳率:50%
帮助的人:89.8万
展开全部
关联啊,你不会连表操作么
追问
我是小白,要交作业。
追答
left join
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式