GeeksforGeeks (Română)


Nume Secțiune
abc CS1
bcd CS2
abc CS1

În tabelul de mai sus, putem găsi rândul duplicat folosind interogarea de mai jos.

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

Un alt exemplu:
Având în vedere un tabel numit PERSON, sarcina este de a scrie o interogare SQL pentru a găsi toate numele duplicat în tabel.
Exemplu:

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

Abordarea simplă este de a crea un tabel temporar care să conțină toate numele dintr-un tabel.

NAME duplicat au existat de mai multe ori, deci să numere de fiecare dată NAME există, putem folosi următorul cod:

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

Acesta este un tabel temporar, pe care putem rula codul de mai jos pentru a obține NUME duplicat.

Cea mai bună abordare este să folosiți condiția GROUP BY și HAVING. Este mai eficient și mai rapid decât anterior.

MySql:

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

Acest articol este contribuit de Sahil Rajput. Dacă vă place GeeksforGeeks și doriți să contribuiți, puteți scrie, de asemenea, un articol folosind contribute.geeksforgeeks.org sau să trimiteți articolul dvs. prin e-mail la [email protected]. Vedeți articolul dvs. care apare pe pagina principală GeeksforGeeks și ajutați alți Geeks.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *