Heim >Datenbank >MySQL-Tutorial >Wie rufe ich Zeilen mit Mindestwerten für jeden eindeutigen Bezeichner in SQL ab?
In der Datenbankverwaltung ist es häufig erforderlich, Datensätze mit eindeutigen Werten und den entsprechenden Mindestwerten zu extrahieren. Angenommen, es gibt eine Form, die die eindeutige Bezeichnerspalte und die zugehörigen Werte enthält. Herausforderung
Betrachten Sie die folgende Tabelle:
Ziel ist es, die minimale
-Leile zu finden, die jedem einzigartigen-Werwert entspricht. Die erwartete Ausgabe ist wie folgt:
Lösung
id game point 1 x 5 1 z 4 2 y 6 3 x 2 3 y 5 3 z 8
game
point
Sie können die folgende SQL -Abfrage verwenden, um dies zu erreichen:
id game point 1 z 4 2 y 6 3 x 2 Erläuterung
Die interne Abfrageberechnet den minimalen
-Warnis jedes eindeutigen<code class="language-sql">SELECT tbl.* FROM TableName tbl INNER JOIN ( SELECT Id, MIN(Point) AS MinPoint FROM TableName GROUP BY Id ) tbl1 ON tbl1.id = tbl.id WHERE tbl1.MinPoint = tbl.Point;</code>und speichert das Ergebnis in der Ableitungstabelle. Die Hauptanfrage verbindet die ursprüngliche Tabelle
gemäß der öffentlichen-Spalte
- .
) und die Zeile vonId
Point
am Ende filtert es das Ergebnis, enthält nur den Mindestwerttbl1
(aus- in der ursprünglichen Tabelle.
in der GruppeId
TableName
tbl1
Mit dieser Abfrage können Sie die eindeutige Zeile von- effizient abrufen.
Point
Das obige ist der detaillierte Inhalt vonWie rufe ich Zeilen mit Mindestwerten für jeden eindeutigen Bezeichner in SQL ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!