Heim > Datenbank > MySQL-Tutorial > Wie wähle ich eindeutige Zeilen mit dem Mindestwert für jede ID und jeden Zeitstempel aus?

Wie wähle ich eindeutige Zeilen mit dem Mindestwert für jede ID und jeden Zeitstempel aus?

Mary-Kate Olsen
Freigeben: 2025-01-17 20:17:10
Original
414 Leute haben es durchsucht

How to Select Distinct Rows with the Minimum Value for Each ID and Timestamp?

Nach Mindestwert gruppieren und eindeutige Zeilen auswählen

Beim Umgang mit Daten, die mehrere Zeilen für jeden Bezeichner und jeden Zeitstempelwert enthalten, ist es notwendig, die Daten bei der Auswahl eindeutiger Zeilen nach Mindestwert zu gruppieren. Dadurch wird sichergestellt, dass jeder Bezeichner bei seinem frühesten Vorkommen nur einmal vertreten ist.

In der bereitgestellten Beispieltabelle besteht das Ziel darin, die Zeile mit der kleinsten record_date für jede ID zu extrahieren. Allerdings enthält die Tabelle doppelte Datumsangaben, was es schwierig macht, dieses Ziel mit herkömmlichen Methoden zu erreichen.

Dieses Problem kann mithilfe korrelierter Unterabfragen und innerer Verknüpfungen gelöst werden:

<code class="language-sql">SELECT mt.*     
FROM MyTable mt INNER JOIN
    (
        SELECT id, MIN(record_date) AS MinDate
        FROM MyTable
        GROUP BY id
    ) t ON mt.id = t.id AND mt.record_date = t.MinDate</code>
Nach dem Login kopieren

Diese Methode beinhaltet:

  1. Erstellen Sie eine Unterabfrage, um die kleinste record_date für jede ID zu ermitteln.
  2. Verknüpfen Sie die Haupttabelle (id) mit der Unterabfrage mithilfe der Felder record_date und MyTable.

Die Ergebnistabelle enthält nur die Zeile mit der kleinsten record_date für jede ID. Diese Methode verhindert, dass doppelte Zeilen in der Ausgabe erscheinen.

Das obige ist der detaillierte Inhalt vonWie wähle ich eindeutige Zeilen mit dem Mindestwert für jede ID und jeden Zeitstempel aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage