私は2つのかなり大きなデータベースを持っています(それぞれ+1百万行)。両方のテーブルの構造は同じです。
列の各値が両方のテーブルで一意であるかどうかを確認するにはどうすればよいですか?
両方のテーブルを考慮する
SELECT COUNT(DISTINCT
colタイプのクエリはありますか?) FROM tbl
ありがとう!
私は2つのかなり大きなデータベースを持っています(それぞれ+1百万行)。両方のテーブルの構造は同じです。
列の各値が両方のテーブルで一意であるかどうかを確認するにはどうすればよいですか?
両方のテーブルを考慮する
SELECT COUNT(DISTINCT
colタイプのクエリはありますか?) FROM tbl
ありがとう!
UNION
サブクエリで2つの完全なセットを作成し、その中から選択することができますDISTINCT col
。
何かのようなもの:
SELECT DISTINCT col FROM (SELECT * FROM tbl1 UNION ALL SELECT * FROM tbl2)
使用できます
UNION ALL
声明。重複する行は削除されないため、重複があるかどうかを確認できます。
これが疑似コードでの私の最初の考えです。
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
基本的に、各テーブルから個別の値のリストを取得し、その列に結合します。