Heim > Datenbank > MySQL-Tutorial > Wie rufe ich die aktuellste Zeile für eine bestimmte ID in SQL ab?

Wie rufe ich die aktuellste Zeile für eine bestimmte ID in SQL ab?

Barbara Streisand
Freigeben: 2025-01-01 07:45:11
Original
781 Leute haben es durchsucht

How to Retrieve the Most Recent Row for a Given ID in SQL?

Abrufen der neuesten Zeile für eine bestimmte ID

In einer Situation, in der eine Datenbanktabelle mehrere Zeilen für dieselbe ID enthält, kann dies der Fall sein Es kann notwendig sein, nur die aktuellste Version zu extrahieren. In diesem Artikel wird erläutert, wie Sie dies in SQL erreichen.

Am Beispiel der bereitgestellten Tabelle:

+----+---------------------+---------+
| id | signin              | signout |
+----+---------------------+---------+
|  1 | 2011-12-12 09:27:24 | NULL    |
|  1 | 2011-12-13 09:27:31 | NULL    |
|  1 | 2011-12-14 09:27:34 | NULL    |
|  2 | 2011-12-14 09:28:21 | NULL    |
+----+---------------------+---------+
Nach dem Login kopieren

Aggregate MAX(signin) Grouped by ID

Um die letzte Anmeldezeit für jede ID zu erhalten, gruppieren Sie die Zeilen nach ID und aggregieren Sie mit MAX(signin). Dadurch wird eine Liste der IDs mit den entsprechenden letzten Anmeldezeiten bereitgestellt.

SQL-Abfrage:

SELECT 
 id, 
 MAX(signin) AS most_recent_signin
FROM tbl
GROUP BY id
Nach dem Login kopieren

INNER JOIN gegen eine Unterabfrage

Um die gesamte aktuellste Zeile für eine bestimmte ID (z. B. ID=1) abzurufen, verwenden Sie einen INNER JOIN gegen a Unterabfrage, die den MAX(Signin) pro ID berechnet. Filtern Sie dann die Ergebnisse nach der gewünschten ID.

SQL-Abfrage:

SELECT 
  tbl.id,
  signin,
  signout
FROM tbl
  INNER JOIN (
    SELECT id, MAX(signin) AS maxsign FROM tbl GROUP BY id
  ) ms ON tbl.id = ms.id AND signin = maxsign
WHERE tbl.id=1
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie rufe ich die aktuellste Zeile für eine bestimmte ID in SQL ab?. 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