GeeksforGeeks (Français)


Nom Section
abc CS1
bcd CS2
abc CS1

Dans le tableau ci-dessus, nous pouvons trouver une ligne en double en utilisant la requête ci-dessous.

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

Autre exemple:
Étant donné une table nommée, la tâche PERSON consiste à écrire une requête SQL pour trouver tous les noms en double dans la table.
Exemple:

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

Lapproche simple consiste à créer une table temporaire contenant le décompte de tous les noms dune table.

Le nom dupliqué a existé plus dune fois, donc pour compter les fois chacun NAME existe, nous pouvons utiliser le code suivant:

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

Ceci est une table temporaire, sur lequel nous pouvons exécuter le code ci-dessous pour obtenir un NOM en double.

La meilleure approche consiste à utiliser les conditions GROUP BY et HAVING. Il est plus efficace et plus rapide que les précédents.

MySql:

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

Cet article est rédigé par Sahil Rajput. Si vous aimez GeeksforGeeks et que vous souhaitez contribuer, vous pouvez également écrire un article en utilisant contrib.geeksforgeeks.org ou envoyer votre article à [email protected] Consultez votre article sur la page principale de GeeksforGeeks et aidez dautres Geeks.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *