GeeksforGeeks (日本語)


名前 セクション
abc CS1
bcd CS2
abc CS1

上記の表では、以下のクエリを使用して重複する行を見つけることができます。

SELECT name, section FROM tblGROUP BY name, sectionHAVING COUNT(*) > 1

別の例:
PERSONタスクという名前のテーブルがある場合、SQLクエリを記述して、テーブル内の重複する名前をすべて検索します。
例:

+----+---------+| Id | NAME |+----+---------+| 1 | Geeks || 2 | for || 3 | Geeks |+----+---------+Output :+---------+| NAME |+---------+| Geeks |+---------+

簡単な方法は、テーブル内のすべての名前をカウントする一時テーブルを作成することです。

重複したNAMEが複数回存在したため、それぞれの回数をカウントします。 NAMEが存在する場合、次のコードを使用できます。

select NAME, count(NAME) as numfrom Persongroup by NAME;
| NAME | num ||---------|-----|| Geeks | 2 || for | 1 |

これは一時テーブルであり、以下のコードを実行して、重複するNAMEを取得できます。

最善のアプローチは、GROUPBYおよびHAVING条件を使用することです。以前よりも効果的で高速です。

MySQL:

select NAMEfrom Persongroup by NAMEhaving count(NAME) > 1;

この記事はSahilRajputによって寄稿されました。 GeeksforGeeksが好きで、貢献したい場合は、contribut.geeksforgeeks.orgを使用して記事を書くか、contribut @ geeksforgeeks.orgに記事をメールで送信することもできます。 GeeksforGeeksのメインページに表示される記事を参照して、他のオタクを助けてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です