Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 13382|Antwoord: 1

[Bron] SQL vindt alle dubbele recordgegevens in een tabel

[Link kopiëren]
Geplaatst op 15-09-2018 09:55:18 | | |
1. Tijdens het interview kwam ik een probleem tegen, namelijk het schrijven van een tabel met twee velden id en naam, alle gegevens opvragen met dubbele namen, en nu het volgende opsommen:


2. Na het opvragen van alle gegevens voor groepering, worden de querygegevens van het aantal herhalingen van de dubbele data hieronder vermeld:


3. Het volgende is om de resultaten van andere te bekijken, en nu wordt het volgende vermeld: Een volledige lijst van methoden voor het opvragen en verwijderen van dubbele records


1. Zoek de redundante dubbele records in de tabel, en de dubbele records worden beoordeeld op basis van één veld (peopleId).


2. Verwijder de redundante dubbele records in de tabel, en de dubbele records worden beoordeeld op basis van één veld (peopleId), waarbij alleen de records met de kleinste rowid overblijven


3. Zoek redundante dubbele records (meerdere velden) in de tabel


4. Verwijder de redundante dubbele records (meerdere velden) in de tabel, zodat alleen de records met de kleinste rowid overblijven


5. Zoek redundante dubbele records (meerdere velden) in de tabel, en bevat geen records met de minste rowid


(twee)

Bijvoorbeeld
Er is een veld "naam" in tabel A,
En de "naam"-waarde kan hetzelfde zijn tussen verschillende records,
Nu moet je zoeken naar items met dubbele "naam"-waarden tussen records in de tabel;


Als het geslacht ook hetzelfde is, is het als volgt:


(drie)

Methode 1

Methode 2 "Duplicaatrecords" hebben twee betekenissen van dubbele records: de ene is een volledig duplicaat record, dat wil zeggen een record met alle velden gedupliceerd, en de andere is een record met dubbele delen van sleutelvelden, zoals het Naam-veld is gedupliceerd, terwijl andere velden niet noodzakelijkerwijs gedupliceerd zijn of alle duplicaten genegeerd kunnen worden.


1. Voor het eerste type herhaling is het relatief eenvoudig op te lossen en te gebruiken



Je kunt de resultaatset krijgen zonder dubbele records.

Als de tabel dubbele records moet verwijderen (1 duplicaat record wordt behouden),

Je kunt het als volgt verwijderen.



Deze duplicatie ontstaat door slecht tabelontwerp en kan worden opgelost door unieke indexkolommen toe te voegen.


2. Dit soort duplicaatprobleem vereist meestal dat het eerste record in het dubbele record wordt bewaard, en de bewerkingsmethode is als volgt: Aangenomen dat er dubbele velden zijn als Naam en Adres, is de unieke resultaatset van deze twee velden vereist



De laatste selectie krijgt de resultaatset van Naam en Adres die niet worden herhaald (maar er is een extra autoID-veld, dat in de select-clausule kan worden geschreven bij het daadwerkelijk schrijven)


(4)

Queries worden gedupliceerd








Vorig:{"error_msg": "IAM-certificering mislukt"}
Volgend:MSSQL kijkt naar de huidige verbindingen en open transacties
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com