Oracle では、select クエリ ステートメントで count() 関数を使用して、繰り返しデータをクエリできます。構文は、「count(userCode)>1 を持つ userCode によってユーザー グループから userCode を選択する」です。
このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。
1. テーブル内の重複した重複レコードを検索します。重複レコードは 1 つのフィールド (userCode) に基づいて判断されます
select * from user where userCode in (select userCode from user group by userCode having count (userCode) > 1)
2。テーブルを削除します。重複レコードは単一のフィールド (userCode) に基づいて判断され、最小の rowid を持つレコードのみが残ります。
delete from user where userCode in (select userCode from user group by userCode having count (peopleId) > 1) and rowid not in (select min(rowid) from user group by userCode having count(userCode)>1)
3。テーブル内の余分な重複レコード (複数のフィールド) を検索します。
select * from user a where (a.userCode,a.userName) in (select userCode,userName from user group by userCode,userName having count(*) > 1)
4. テーブル内の冗長な重複レコード (複数のフィールド) を削除し、最小の ROWID を持つレコードのみを残します
delete from user a where (a.userCode,a.userName) in (select userCode,userName from user group by userCode,userName having count(*) > 1) and rowid not in (select min(rowid) from user group by userCode,userName having count(*)>1)
5. ROWID を除く、テーブル内の冗長な重複レコード (複数のフィールド) を検索します 最小のレコード
select * from user a where (a.userCode,a.userName) in (select userCode,userName from user group by userCode,userName having count(*) > 1) and rowid not in (select min(rowid) from user group by userCode,userName having count(*)>1)
推奨チュートリアル: 「Oracle ビデオ チュートリアル 」
以上がOracleで重複データをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。