メーリングリストを持っていて、重複しているエントリが多数あります。私はそれらを削除することができるように重複を見つけることを試みている。以下の完全なクエリを実行すると、テーブル内のすべての項目が取得されます(142,000 +)。サブクエリを実行すると、5768行しか得られません。どの重複行を削除するかを決めるには、重複行ごとにすべての列が必要です。すべての行を返す完全なクエリが発生する原因は何ですか?SQL existsすべての行を返します
あなたはそれをこのようにしなければならないselect * from Mailinglist
where exists
(select count(*), mailaddress, CenterName
from Mailinglist
group by MailAddress, CenterName
having count(*)>1)
なぜ内部クエリを実行しないのですか? 'Having'句を持つものは? – codingbiz
@codingbizサブクエリは、削除後に少なくとも1つのデータが必要なため、1つを除いて重複して削除された結果を持っています。右は、 'オフセット2を使用して次の100行'を使用できます。 –
サブクエリーは外部クエリなぜ外部クエリからすべての行を返します。 –