So wählen Sie das maximale Datum innerhalb einer Join-Anweisung aus
In MySQL ist es möglich, das maximale Datum für ein bestimmtes Attribut innerhalb abzurufen ein verbundener Datensatz mit der Funktion MAX(). Diese Technik wird häufig verwendet, um historische Daten zu sammeln oder die jüngste Instanz eines bestimmten Ereignisses zu identifizieren.
Betrachten Sie die folgende Abfrage:
SELECT t1.received_id , t1.transaction_id , t1.date_modified , l.location FROM transactions t1 JOIN ( SELECT received_id, MAX(date_modified) maxmodify FROM transactions GROUP BY received_id) max_record ON max_record.received_id = t1.received_id AND max_record.maxmodify = t1.date_modified JOIN locations l ON l.location_id = t1.location_id JOIN received r ON r.received_id = t1.received_id WHERE t1.received_id = '1782' ORDER BY t1.date_modified DESC
Diese Abfrage ruft die Beleg-ID, die Transaktions-ID, Änderungsdatum und Speicherort für den Datensatz mit der ID „1782“, wobei das Änderungsdatum mit dem maximalen Datum übereinstimmt, das für diese Beleg-ID gefunden wurde. Dadurch wird sichergestellt, dass wir die neuesten historischen Informationen für den angegebenen Datensatz erhalten.
Die Kernkomponente der Abfrage ist die folgende Unterabfrage:
SELECT id,MAX(thing) max_thing FROM my_table GROUP BY id
Diese Unterabfrage identifiziert den Maximalwert für das Thing-Attribut innerhalb jeder durch das id-Attribut definierten Gruppe. Indem wir die Originaltabelle mit dieser Unterabfrage verknüpfen, können wir Datensätze mit nicht maximalen Datumsangaben herausfiltern und so nur die gewünschten historischen Daten abrufen.
Das obige ist der detaillierte Inhalt vonWie finde ich das maximale Datum in einem MySQL-Join?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!