名前 | セクション |
---|---|
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のメインページに表示される記事を参照して、他のオタクを助けてください。