日期:2014-05-17  浏览次数:20385 次

sql语句问题,求大神
用sql语句比较两个表的数量和数据是否一致。很急很急,求大神,谢谢
sql 数据

------解决方案--------------------
你想比较整个表,不是其中一两个字段?

如:
比较两个字段,a表存在而b表不存在的数据
select a.*
from a
where not exists(select 1 from b where a.col1=b.col1 and a.col2=b.col2)


------解决方案--------------------
下面是b表存在而a表不存的数据
select *
from b
where not exists(select 1 from a where a.col1=b.col1 and a.col2=b.col2)

如果两条语句查询都为空,说明两表数据一样,只要有数据出来,就说明两表数据有不一样
------解决方案--------------------
小葱,,我来啦。。结贴 给点分啊,,
------解决方案--------------------
这个需求确实没见过,数量好比较,内容是否可以把两张表所有字段进行关联,得出的结果集和原来两张表数据量一样就认为这两张表内容一样。
------解决方案--------------------
简单

select * from table1
except 
select * from table2
------解决方案--------------------
不会,mark下,学习
------解决方案--------------------
帮顶,求大神关注,Mark下
------解决方案--------------------
引用:
简单

select * from table1
except 
select * from table2

如果是2个不同数据库的表,能比较么
------解决方案--------------------
引用:
Quote: 引用:

简单

select * from table1
except 
select * from table2

如果是2个不同数据库的表,能比较么


为何不能?除非两个数据库无法连通~
select * from DB1.dbo.table1
except 
select * from DB2.dbo.table2

or


select * from Server1.DB1.dbo.table1
except 
select * from Server2.DB2.dbo.table2
------解决方案--------------------
顶一下楼上 ,在提供一个方法:将留下一个唯一列,然后其它字段合并字符串 在比较。