2016-04-07 10 views
0

AWS赤方偏移DB二つの等しいテーブル(異なる列番号)が

Iは同じ

select col1, col2 from B 
except 
select col1, col2 from A 

戻り、A及びB

select col1, col2 from A 
except 
select col1, col2 from B 

戻り、空の2つのテーブルを持っている行の数が異なります空き

しかし

例えば
select count(*) from A 

戻りますが、

select count(*) from B 

リターン200

はどのようにすることができますか?

+1

あなたは 'EXCEPT'の代わりに' EXCEPT ALL'を使うべきです。すべての列に対して 'row_number()'を使って回避することができます – jangorecki

答えて

2

各テーブルの個別のデータセットは、それぞれ別のデータセットに含まれているためです。別のカウントは、重複する行があることを意味します。これはそれをより明確にするかもしれない。

Distinct(A) is a subset of B 
Distinct(B) is a subset of A 
関連する問題