For å komme i gang, må du ha MySQL installert på systemet ditt med dets verktøy: MySQL Workbench og kommandolinje klientskall. Etter det bør du ha noen data eller verdier i databasetabellene dine som duplikater. La oss utforske dette med noen eksempler. Først av alt, åpne kommandolinjens klientskall fra skrivebordet ditt og skriv MySQL-passordet ditt på spurt.
Vi har funnet forskjellige metoder for å finne duplisert i en tabell. Ta en titt på dem en etter en.
Søk i duplikater i en enkelt kolonne
Først må du vite om syntaksen til spørringen som brukes til å sjekke og telle duplikater for en enkelt kolonne.
>> Velg Col Count (COL) fra Table Group av Col som har Count (COL)> 1;Her er forklaringen på spørringen ovenfor:
Vi har laget en ny tabell kalt 'Animals' i MySQL -databasen 'Data' med dupliserte verdier. Den har seks kolonner med forskjellige verdier i seg, e.g., ID, navn, arter, kjønn, alder og pris som gir informasjon angående forskjellige kjæledyr. Når vi ringer til denne tabellen ved hjelp av SELECT-spørringen, får vi utdataene nedenfor på MySQL-kommandolinjens klientskall.
>> Velg * fra data.dyr;Nå vil vi prøve å finne de overflødige og gjentatte verdiene fra tabellen ovenfor ved å bruke tellingen og gruppen BY -leddet i SELECT -spørringen. Denne spørringen vil telle navnene på kjæledyr som er plassert mindre enn 3 ganger i tabellen. Etter det vil den vise disse navnene som nedenfor.
>> velg Navntelling (navn) fra data.Dyrgruppe ved navn har telling (navn) < 3;Bruke den samme spørringen for å få forskjellige resultater mens du endrer tellenummeret for navn på kjæledyr som vist nedenfor.
>> velg Navntelling (navn) fra data.Dyrgruppe ved navn å ha telling (navn)> 3;For å få resultater for totalt 3 duplikatverdier for navn på kjæledyr som vist nedenfor.
>> velg Navntelling (navn) fra data.Dyrgruppe ved navn å ha telling (navn) = 3;Søk i duplikater i flere kolonner
Syntaksen til spørringen for å sjekke eller telle duplikater for flere kolonner er som følger:
>> Velg Col1, Count (Col1), Col2, Count (Col2) fra Table Group av Col1, Col2 som har telling (Col1)> 1 og Count (Col2)> 1;Her er forklaringen på spørringen ovenfor:
Vi har brukt den samme tabellen som heter 'Animals' med dupliserte verdier. Vi fikk utdataene nedenfor mens vi brukte spørringen ovenfor for å sjekke duplikatverdiene i flere kolonner. Vi har sjekket og teller duplikatverdiene for kolonner kjønn og pris mens de er gruppert etter kolonneprisen. Det vil vise kjæledyrskjønnene og prisene deres som er bosatt i bordet som duplikater ikke mer enn 5.
>> Velg kjønn, telling (kjønn), pris, telling (pris) fra data.Dyrgruppe etter pris å ha telling (pris) < 5 AND COUNT(Gender) < 5;Søk i duplikater i enkelttabell ved hjelp av indre sammenføyning
Her er den grunnleggende syntaksen for å finne duplikater i en enkelt tabell:
>> Velg col1, col2, tabell.col fra tabell indre sammenføyning (velg col fra tabellgruppe av col som har telling (col1)> 1) temp på tabellen.col = temp.col;Her er fortellingen om overhead -spørringen:
Vi har en ny tabell, 'Order2' med dupliserte verdier i kolonnen Orderno som vist nedenfor.
>> Velg * fra data.ordre2;Vi velger tre kolonner: vare, salg, bestill som skal vises i utgangen. Mens kolonneordren brukes til å sjekke duplikater. Den indre sammenføyningen vil velge verdiene eller radene som har verdiene til elementer mer enn en i en tabell. Når vi utfører, vil vi få resultatene nedenfor.
>> Velg vare, salg, bestilling2.Ordre fra data.bestill2 indre sammenføyning (velg ordreNo fra data.bestill2 gruppe etter ordreNo å ha telling (vare)> 1) temp på ordre2.Orderno = temp.Best.nr;Søk i duplikater i flere tabeller ved hjelp av indre sammenføyning
Her er den forenklede syntaksen for å finne duplikater i flere tabeller:
>> Velg col fra tabell1 indre sammenføyning av tabell2 på tabell1.col = tabell2.col;Her er beskrivelsen av overhead -spørringen:
Vi har to tabeller, 'Order1' og 'Order2', i vår database som har 'OrderNo' -kolonnen i begge deler som vist nedenfor.
Vi bruker den indre sammenføyningen for å kombinere duplikatene til to tabeller i henhold til en spesifisert kolonne. Den indre sammenføyningsklausulen vil få alle dataene fra begge tabellene ved å bli med dem, og ON -leddet vil relatere samme navnekolonner fra begge tabellene, e.g., Best.nr.
>> Velg * fra data.bestill1 indre sammenføyningsdata.Bestill2 på bestilling1.OrdreNo = ordre2.Best.nr;For å få de spesielle kolonnene i en utgang, prøv kommandoen nedenfor:
>> Velg region, status, vare, salg fra data.bestill1 indre sammenføyningsdata.Bestill2 på bestilling1.OrdreNo = ordre2.Best.nr;Konklusjon
Vi kan nå søke etter flere kopier i en eller flere tabeller med MySQL -informasjon og gjenkjenne gruppen av, Count og Inner Join -funksjonen. Forsikre deg om at du har bygget bordene ordentlig, og at de riktige kolonnene er valgt.