从两个表中选择不同的值

时间:2011-03-01 18:17:30

标签: mysql count distinct multiple-tables

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

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

有没有 SELECT COUNT(DISTINCT {山口{1}}
将考虑BOTH表的查询类型?

谢谢!

3 个答案:

答案 0 :(得分:5)

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

类似的东西:

SELECT DISTINCT col FROM (SELECT * FROM tbl1 UNION ALL SELECT * FROM tbl2)

答案 1 :(得分:0)

您可以使用

UNION ALL

语句。它不会删除重复的行,因此您可以查看是否存在重复行。

答案 2 :(得分:-1)

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

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从每个表中获取一个不同的值列表,将它们连接到该列上。