VorwortIch war auf einer Geschäftsreise bei einem Kunden, um Software bereitzustellen und zu debuggen. Eines Tages kam der Kunde plötzlich zu mir und sagte, dass es eine Anomalie in den vor Ort erstellten Daten gebe. Die deutlichste Äußerung war, dass dasselbe Etikett auf mehreren Materialien erschien. Sie brauchten meine Mitarbeit, um herauszufinden, wie das Problem zu beheben sei. analysierenDer Kunde stellte einen Stapel Kartons mit doppelten Etiketten vor mich. Ich hatte solche Angst, dass ich befürchtete, ich wäre in großen Schwierigkeiten. Nach kurzem Überlegen müssen wir nun die Datenbank nach doppelten Tags abfragen, das heißt, wir müssen die Tags zählen und diejenigen ermitteln, deren Anzahl > 1 ist. Ähm, Grammatikfehler, ich erinnere mich, dass es ein "Having" gab, versuchen wir es stattdessen Wow, es gibt mehr als 1.500 doppelte Tags. Zählen wir die Gesamtzahl der Fragen und gruppieren sie, um den Prozentsatz doppelter Tags anzuzeigen. Übrigens, werfen Sie diese doppelten Etikettendaten zuerst dem Kunden vor, um das Produkt zu verfolgen (glücklicherweise unterstützt Navicat das Kopieren von Daten). Daten insgesamtDas Ergebnis des obigen Abfragedatensatzes ist eine temporäre Tabelle. Basierend darauf wird sum() verwendet, um zu summieren Es gibt viele doppelte Datensätze, was ein großes Problem darstellt. WiederholungsrateÄndern Sie die Abfragemethode der vorherigen Abfragetabelle, d. h. gruppieren Sie die Zähldaten erneut Den Ergebnissen zufolge wurden die meisten Problemdaten zweimal wiederholt. Der Unterschied zwischen Wo und HabenWhere ist eine Einschränkungsanweisung, die die Abfragebedingungen in der Datenbank einschränkt, bevor die Abfrageergebnisse zurückgegeben werden. Das heißt, sie wird wirksam, bevor die Ergebnisse zurückgegeben werden, und nach Where können keine Aggregatfunktionen verwendet werden. Having ist eine Filteranweisung. Die sogenannte Filterung wird ausgeführt, nachdem die Ergebnisse der Datenbankabfrage zurückgegeben wurden, d. h. sie wird wirksam, nachdem die Ergebnisse zurückgegeben wurden, und die Aggregationsfunktion kann nach Having verwendet werden. Die sogenannte Aggregatfunktion ist eine Funktion, die eine Reihe von Werten berechnet und einen einzelnen Wert zurückgibt: sum–-- Summe, count–-- Anzahl, max–-- Maximalwert, avg–-- Durchschnittswert usw. ZusammenfassenBei der Abfrageoperation von MySQL verwenden wir normalerweise eine gemeinsame Abfrage mehrerer Tabellen, verwenden die Abfrageergebnisse als Zwischentabelle für mehrere Abfragen, gruppieren die Abfrageergebnisse, führen statistische Aggregationen und andere Operationen durch Wenn bei der Abfrageoperation eine Funktionsberechnung oder Gruppierung verwendet wird, besteht die typische Funktion darin, mehrere Datensätze in der Originaltabelle zu einem zusammenzuführen, und „having“ ist erforderlich, um die Ergebnisse dieser Operationen zu filtern. Verwenden Sie außerdem „where“, um die Tabellendatensätze bedingt zu filtern. Dies ist das Ende dieses Artikels zur Fehlerbehebung und Verarbeitung doppelter MySQL-Datensätze vor Ort. Weitere Informationen zur Fehlerbehebung und Verarbeitung doppelter MySQL-Datensätze finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Docker-Installations- und Konfigurationsschritte für RabbitMQ
>>: Eine vollständige Liste häufig verwendeter HTML-Tags und ihrer Eigenschaften
Inhaltsverzeichnis Was ist ein Listener in Vue? V...
Ich habe das vorliegende Projekt endlich abgeschl...
Aus einer Laune heraus habe ich eine Fallstudie ü...
Inhaltsverzeichnis Vorwort Grundlegende Einführun...
Dieser Artikel erläutert anhand von Beispielen di...
Inhaltsverzeichnis Vorwort: 1. Kurze Einführung i...
Vorwort Die Rolle des Prozessmanagements: Integri...
Frage Nginx nimmt $remote_addr als echte IP-Adres...
Anwendungsszenarien: Die Seiten des Projekts müss...
Unter Linux gibt es zwei Arten von Dateiverbindun...
Inhaltsverzeichnis Download des Installationspake...
Inhaltsverzeichnis Funktionen auf Blockebene Ände...
MySQL-Datenbank erstellen Nachdem wir uns beim My...
In tatsächlichen Projekten gibt es Beziehungen zw...
Ein Datensatz eines Online-MySQL-Transaktionsprob...