Verwenden Sie GROUP BY und MAX(DATE), um die maximale Abfahrtszeit jedes Zuges zu ermitteln
In einer Datenbankumgebung können Sie durch Gruppieren von Datensätzen nach bestimmten Spalten Aggregationsvorgänge für gruppierte Daten durchführen. In diesem Beispiel besteht das Ziel darin, das späteste Ziel (maximale Abfahrtszeit) zu ermitteln, das jedem Zug in der Datentabelle zugeordnet ist.
Dazu können wir die folgende SQL-Abfrage nutzen:
<code class="language-sql">SELECT train, dest, time FROM ( SELECT train, dest, time, RANK() OVER (PARTITION BY train ORDER BY time DESC) dest_rank FROM traintable ) WHERE dest_rank = 1</code>
Diese Abfrage verwendet eine Unterabfrage, um eine abgeleitete Tabelle zu erstellen, die den Zug, das Ziel, die Abfahrtszeit und die Rangfolge der Abfahrtszeit jedes Zuges enthält. Die Rangfolgefunktion weist jeder Abfahrtszeit innerhalb jedes Zuges eine Sequenznummer zu, wobei die späteste Zeit den höchsten Rang erhält.
Dann wählt die Hauptabfrage Zeilen in der abgeleiteten Tabelle aus, deren Abfahrtszeitrang gleich 1 ist. Tatsächlich wird dadurch nur das letzte Ziel für jeden Zug extrahiert, um sicherzustellen, dass das Ergebnis die gewünschte Ausgabe widerspiegelt:
<code>火车 目的地 时间 1 SZ 14:00 2 HK 13:00</code>
Mit dieser Methode können Sie mit einer einzigen SQL-Anweisung das letzte Ziel jedes Zuges ermitteln und so das Ziel Ihrer Datenanalyseaufgabe erreichen.
Das obige ist der detaillierte Inhalt vonWie finde ich mithilfe von SQL die maximale Abfahrtszeit für jeden Zug?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!