Név | szakasz |
---|---|
abc | CS1 |
bcd | CS2 |
abc | CS1 |
A fenti táblázatban az alábbi lekérdezés segítségével duplikált sorokat találhatunk. >
Egy másik példa:
Egy PERSON nevű tábla feladata az, hogy SQL lekérdezést írjon, hogy megtalálja az összes duplikált nevet a táblázatban.
Példa:
+----+---------+| Id | NAME |+----+---------+| 1 | Geeks || 2 | for || 3 | Geeks |+----+---------+Output :+---------+| NAME |+---------+| Geeks |+---------+
Az egyszerű megközelítés egy olyan ideiglenes tábla létrehozása, amely megszámolja az összes tábla nevét.
A duplikált NAME többször is létezett, tehát az egyes idők számolásához. A NAME létezik, a következő kódot használhatjuk:
select NAME, count(NAME) as numfrom Persongroup by NAME;
| NAME | num ||---------|-----|| Geeks | 2 || for | 1 |
Ez egy ideiglenes tábla, amelyen futtathatjuk az alábbi kódot, hogy megkaphassuk a NAME duplikátumot.
A legjobb módszer a GROUP BY és a HAVING feltétel használata. Hatékonyabb és gyorsabb, mint az előző.
MySql:
select NAMEfrom Persongroup by NAMEhaving count(NAME) > 1;
A cikket Sahil Rajput készítette. Ha tetszik a GeeksforGeeks, és szeretne közreműködni, írhat egy cikket is a contrib.geeksforgeeks.org címen, vagy elküldheti cikkét a [email protected] címre. Tekintse meg cikkét a GeeksforGeeks főoldalán, és segítsen más Geekseknek.