3

我有两个相当大的数据库(每个数据库 + 100 万行)。两个表具有相同的结构。

如何检查列中的每个值是否在两个表中都是唯一的?

是否有一种
SELECT COUNT(DISTINCTcol) FROM tbl
类型的查询会同时考虑这两个表?

谢谢!

4

3 回答 3

5

您可以UNION在子查询中使用两个完整集,然后从中进行选择DISTINCT col

就像是:

SELECT DISTINCT col FROM (SELECT * FROM tbl1 UNION ALL SELECT * FROM tbl2)
于 2011-03-01T18:19:30.127 回答
1

您可以使用

UNION ALL

陈述。它不会删除重复的行,因此您可以查看是否有任何重复。

于 2011-03-01T18:20:31.100 回答
0

这是我对伪代码的初步想法。

select tableOne.distinctcol
from
(select distinct col as distinctcol from tb1) as tableOne
(select distinct col as distinctcol from tb2) as tableTwo
where tableOne.distinctcol = tableTwo.distinctcol

Basic 从每个表中获取不同的值列表,将它们加入该列。

于 2011-03-01T18:23:15.417 回答