在SQLserver中 怎样将两个库中同样结构的两个表的数据进行合并

在SQLserver中 怎样将两个库中同样结构的两个表的数据进行合并,第1张

分类: 电脑/网络 >> 程序设计 >> 其他编程语言

问题描述:

在SQLserver中 怎样将两个库中同样结构的两个表的数据进行合并

数据有可能存在重复

表结构完全相同

解析:

可以将两个表中的数据提出来(重复的过滤)写入一个临时表中,清空这两个表,再将临时表的数据回写入这两个表里面。为防出错,请先备份数据库再 *** 作。

如:

第一步:select from 数据库名1表名1 into #临时表名

第二步:insert into #临时表名 (字段名1,字段名2……) (select a字段名1,a字段名2…… from 数据库名2表名2 a,数据库名1表名1 b where 数据库名2表名2主键字段名<>数据名1表名1主键字段名 )

第三步:delete from 数据库名1表名1

第四步:delete from 数据库名2表名2

第五步:insert into 数据库名1表名1 from #临时表

第六步:insert into 数据库名2表名2 from #临时表

第七步:drop table #临时表

注:如果两个表中没有主键,你只有在第二条语句中where 项中一个字段一个字段地添加条件判断了。

1两个不同的表进行查询,需要把结果合并,

比如table1的列为 id, user_id, type_id,pro_id;

table2的列为 id,user_id,collect_id;分别如下图所示

table1:

table2:

2将两个表的查询结果合并到一起的查询语句为

select , null as collect_id from table1 where user_id = 527

union

select id,user_id,null as type_id,null as pro_id, collect_id from table2 where user_id = 527;

3结果为:

总结:其实就是把对应的列补充到没有该列的表中,在例子中就是把collect_id补充到table1中,

把type_id,pro_id补充到table2中。

分类: 电脑/网络 >> 程序设计 >> 其他编程语言

问题描述:

数据库1: unca

数据库2: unca1

都互相有

accwd 主键为: A

dattdf 主键为: B

iufer 主键为: C

floien 主键为: D

dengdq 主键为: E

等5个表 每个表的属性字段类型都一样

数据库1 有5万多条数据

数据库2 有7万多条数据

现在想 把2个数据库的数据合并

如果出现主键字段相同数据 就自动将那个重复的数据其中1条 主键号加上 自己设定的 2 这个数字

就是说 如果

accwd 表 字段:A G D F

5 77 66 88

5 44 33 77

我想要它遇到这情况后 在其中1条数据 的主键 后面加上2

如下 第一条加了2

accwd 表 字段:A G D F

52 77 66 88

5 44 33 77

这个语法该怎写呢?大家帮下~ 不知道这样解释高手是否能明白~:)

解析:

一句话做到是不太可能了,我想到的是

先用exists,把一个库中与另一库内重复的纪录的主键改变

然后用select into合并表

具体不知道你用什么数据库,只大致写一下:

1,update db1accwd t1 set a = a+'2' where exist select from db2accwd t2 where t1a = t2a;

2, insert into db1accwd select from select from db2accwd;

select TypeCode,TypeName ,sum(shijianduan),FacilityId

from 表名

group by FacilityId ,TypeName ,TypeCode

select new1id,wm_concat(rolename) from (----新加的

select new1id, rolename from (select adminid,admin_roleroleSet_id from admin left join admin_role on adminid=admin_roleadminSet_id) as new1 left join role on new1roleSet_id=roleid)

group by new1id----新加的

wm_concat针对oracle,其他类型数据库自己切换下函数即可

以上就是关于在SQLserver中 怎样将两个库中同样结构的两个表的数据进行合并全部的内容,包括:在SQLserver中 怎样将两个库中同样结构的两个表的数据进行合并、sql如何把两张表的数据合并起来、求助:SQL里怎样合并2个数据库或者表呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9709822.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存