Detailliertes Beispiel zum Entfernen doppelter Daten in MySQL

Detailliertes Beispiel zum Entfernen doppelter Daten in MySQL

Detailliertes Beispiel zum Entfernen doppelter Daten in MySQL

Es gibt zwei Bedeutungen von doppelten Datensätzen: Eine ist ein vollständig doppelter Datensatz, das heißt, alle Felder sind wiederholt; die andere ist ein Datensatz, bei dem einige Felder wiederholt sind. Die erste Art der Duplizierung ist relativ einfach zu lösen. Sie müssen nur das Schlüsselwort distinct in der Abfrageanweisung verwenden, um Duplikate zu entfernen. Fast alle Datenbanksysteme unterstützen die distinct-Operation. Der Hauptgrund für diese Duplizierung ist ein schlechtes Tabellendesign, das durch das Hinzufügen eines Primärschlüssels oder einer eindeutigen Indexspalte zur Tabelle vermieden werden kann.

wähle different * aus t;

Beim zweiten Typ von Duplikatsproblemen ist es normalerweise erforderlich, einen der doppelten Datensätze abzufragen. Angenommen, die Tabelle t hat drei Felder: ID, Name und Adresse. ID ist der Primärschlüssel. Die wiederholten Felder sind Name und Adresse. Für diese beiden Felder muss ein eindeutiger Ergebnissatz abgerufen werden.

- Oracle, MySQL, Verwendung korrelierter Unterabfragen

wähle * aus t t1

 wobei t1.id =

 (wählen Sie min(t2.id)

  von t t2

  wobei t1.name = t2.name und t1.address = t2.address);

-- Hive unterstützt nur Unterabfragen in der FROM-Klausel. Unterabfragen müssen Namen haben und Spalten müssen eindeutig sein.

wähle t1.*

 von t t1,

   (Wählen Sie Name, Adresse, min(id)-ID aus t, gruppieren Sie nach Name, Adresse) t2

 wobei t1.id = t2.id;

 

-- Sie können auch die Analysefunktion row_number() von hive verwenden.

Wählen Sie t.id, t.name, t.address

 von (ID, Name, Adresse auswählen,

row_number() über (nach Namen verteilen, Adresse nach ID sortieren) als rn 

     von t) t 

 wobei t.rn=1;

Vielen Dank fürs Lesen, ich hoffe, es kann Ihnen helfen, danke für Ihre Unterstützung dieser Site!

Das könnte Sie auch interessieren:
  • Zusammenfassung der Methoden zum Suchen und Löschen doppelter Daten in MySQL-Tabellen
  • MySQL-Abfrage doppelter Daten (löschen Sie doppelte Daten und behalten Sie die Daten mit der kleinsten ID als einzige Daten)
  • MySQL SQL-Anweisung zum Suchen doppelter Daten basierend auf einem oder mehreren Feldern
  • MySQL-Lernnotizen zum Umgang mit doppelten Daten

<<:  Beispielcode zur Implementierung einer Anmelde- und Registrierungsvorlage in Vue

>>:  Detaillierte Schritte zur schnellen Installation von Openshift

Artikel empfehlen

Lösen Sie das Problem der Containerverwaltung mit Docker Compose

Im Docker-Design führt ein Container nur eine Anw...

So installieren Sie Jenkins auf CentOS 8

Um Jenkins auf CentOS 8 zu installieren, müssen S...

Lösung für Fremdschlüsselfehler bei der MySQL-Tabellenerstellung

Datenbanktabelle A: Tabelle erstellen Task_Desc_T...

Welche Funktion ist !-- -- im HTML-Seitenstil?

Hauptsächlich für Browser mit niedriger Version &l...

Tutorial zur Konfiguration des Nginx/Httpd-Reverseproxys für Tomcat

Im vorherigen Blog erfuhren wir die Verwendung un...

Einführung in verschiedene Möglichkeiten zur Einführung von CSS in HTML

Inhaltsverzeichnis 1. CSS-Stile direkt in HTML-Ta...

React realisiert den gesamten Prozess des Seitenwasserzeicheneffekts

Inhaltsverzeichnis Vorwort 1. Anwendungsbeispiele...

Implementierung der Änderung von Konfigurationsdateien im Docker-Container

1. Betreten Sie den Container docker run [Option]...

MySQL-Abfragemethode mit mehreren Bedingungen

MySQL-Abfrage mit mehreren Bedingungen Umgebung: ...