Heim > Datenbank > MySQL-Tutorial > Wie wähle ich die drei aktuellsten Datensätze mit eindeutigen Werten in einer bestimmten Spalte aus?

Wie wähle ich die drei aktuellsten Datensätze mit eindeutigen Werten in einer bestimmten Spalte aus?

Susan Sarandon
Freigeben: 2024-12-02 12:06:18
Original
713 Leute haben es durchsucht

How to Select the 3 Most Recent Records with Unique Values in a Specific Column?

So wählen Sie die 3 aktuellsten Datensätze mit eindeutigen Werten für eine bestimmte Spalte aus

Das Auswählen der aktuellsten Datensätze für eine bestimmte Tabelle ist ein gemeinsame Operation in Datenbanken. Allerdings kann es komplexer werden, wenn Sie sicherstellen möchten, dass die Werte für eine bestimmte Spalte eindeutig sind und Duplikate vermieden werden sollen. Diese Aufgabe erfordert einen differenzierteren Ansatz.

Im gegebenen Szenario versucht ein Benutzer, die drei aktuellsten Datensätze aus einer Tabelle auszuwählen, in der die Werte in der Spalte „otheridentifier“ unterschiedlich sind. Der erste Versuch mit SELECT * FROM table GROUP BY (otheridentifier) ​​ORDER BY time DESC LIMIT 3 führt nicht zum gewünschten Ergebnis, da die Gruppierung Vorrang vor der Reihenfolge in der SQL-Anweisung hat.

Um diese Einschränkung zu überwinden, a Es ist eine ausführlichere Abfrage erforderlich:

SELECT *
FROM `table`
WHERE `id` = (
    SELECT `id`
    FROM `table` AS `alt`
    WHERE `alt`.`otheridentifier` = `table`.`otheridentifier`
    ORDER BY `time` DESC
    LIMIT 1
)
ORDER BY `time` DESC
LIMIT 3
Nach dem Login kopieren

Diese Abfrage funktioniert, indem die folgenden Schritte ausgeführt werden:

  1. Es Verwendet eine Unterabfrage, um die ID des neuesten Datensatzes für jeden einzelnen anderen Bezeichnerwert abzurufen.
  2. Die Hauptabfrage beschränkt dann die Auswahl auf Datensätze mit den entsprechenden ID-Werten.
  3. Schließlich sind die Ergebnisse sortiert in absteigender Reihenfolge der Zeit und beschränkt auf die drei obersten Datensätze.

Mit diesem Ansatz kann der Benutzer effektiv die drei neuesten Datensätze mit eindeutiger Unterscheidung auswählen Werte für die Spalte otheridentifier, was das gewünschte Ergebnis liefert.

Das obige ist der detaillierte Inhalt vonWie wähle ich die drei aktuellsten Datensätze mit eindeutigen Werten in einer bestimmten Spalte 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