1. Under intervjun stötte jag på ett problem, det vill säga att skriva en tabell med två fält med id och namn, söka all data med dubblettnamn och nu lista följande:
2. Efter att all data för gruppering har förfrågats listas frågedata för antalet upprepningar av den dubblettade datan nedan:
3. Följande är för att visa resultaten från andra, och nu listas följande: En komplett lista över metoder för att förfrågna och ta bort dubblettposter
1. Hitta de redundanta dubblettposterna i tabellen, och dubblettposterna bedöms baserat på ett enda fält (peopleId).
2. Ta bort de redundanta dubblettposterna i tabellen, och de dubblettposter bedöms baserat på ett enda fält (peopleId), medan endast posterna med minsta rowid lämnas kvar
3. Hitta redundanta dubblettposter (flera fält) i tabellen
4. Ta bort de redundanta dubblettposterna (flera fält) i tabellen, så att endast posterna med minsta rowid blir kvar
5. Hitta redundanta dubblettposter (flera fält) i tabellen, och innehåller inte poster med minst rowid
(två)
Till exempel Det finns ett fält "namn" i tabell A, Och "namn"-värdet kan vara detsamma mellan olika poster, Nu behöver du fråga efter objekt med dubbletter av "namn"-värden mellan poster i tabellen;
Om könet också är detsamma, är det följande:
(tre)
Metod 1
Metod 2 "Dubblettposter" har två betydelser av dubblettposter, den ena är en helt duplicerad post, det vill säga en post med alla fält duplicerade, och den andra är en post med dubbletter av nyckelfält, såsom att Namn-fältet är duplicerat, medan andra fält inte nödvändigtvis är duplicerade eller alla dubbletter kan ignoreras.
1. För den första typen av repetition är den relativt enkel att lösa och använda
Du kan få resultatuppsättningen utan dubblettposter.
Om tabellen behöver ta bort dubblettposter (1 duplicerad post sparas),
Du kan ta bort det enligt följande
Denna duplicering uppstår på grund av dålig tabelldesign och kan lösas genom att lägga till unika indexkolumner.
2. Denna typ av duplicettproblem kräver vanligtvis att den första posten i den dubblettposten sparas, och operationsmetoden är följande: Om det finns dubblettfält som Namn och Adress krävs den unika resultatmängden för dessa två fält
Det sista valet får resultatuppsättningen Namn och Adress som inte upprepas (men det finns ett extra autoID-fält som kan skrivas i select-klausulen när man faktiskt skriver)
(4)
Förfrågningar dupliceras
|