注册 登录
编程论坛 SQL Server论坛

求问SQLServer多个表中将重复的数据提取到新表

jonyruigo 发布于 2015-07-28 09:20, 1214 次点击
请教大家,我有001-008这8个表,每个表的结构是一样的,但是每个表的内容不太一样,且各个表之间有可能有重复的信息。现在想通过查询语句将这几个表中的重复信息提取出来并放到一个新表009中(前提是数据太多,不确定哪条信息时重复的),表的最后要出现重复的次数。
请问谁有好的方法吗,最好能详细一点,本人刚学是新手,谢谢大家
4 回复
#2
mxbing19842015-07-29 08:40
Create Table T001
(
A Varchar(10)
)


Create Table T002
(
A Varchar(10)
)


Create Table T003
(
A Varchar(10)
)

Create Table T004
(
A Varchar(10)
)

insert into T001 values('A'),('B')
insert into T002 values('B'),('C')
insert into T003 values('C'),('D')

Exec sp_MSforeachtable @command1="Insert into T004 select * from ? except select * From T004 ",@whereand=" And o.name in('T001','T002','T003')"

--T004改成你的009表,in里面填你的001到008的表,就ok了
#3
mxbing19842015-07-29 08:46
--酱紫
Exec sp_MSforeachtable @command1="Insert into [009] select * from ? except select * From [009] ",@whereand=" And o.name in(select table_name from INFORMATION_SCHEMA.TABLES where table_name between '001' and '008')"
#4
Maick2015-07-29 10:56
回复 3楼 mxbing1984
好像很牛逼
#5
tlliqi2015-07-29 20:54
回复 2楼 mxbing1984
看着可以
1