Eindeutige Zeilen mit minimalen Werten unter Verwendung von SQL
extrahierenSQL -Abfragen umfassen häufig die Auswahl bestimmter Zeilen basierend auf definierten Bedingungen. Ein gemeinsames Szenario ist das Abrufen der Zeile mit dem Mindestwert in einer Spalte und stellt sicher, dass nur eindeutige Zeilen zurückgegeben werden.
veranschaulichen wir mit dieser Beispieltabelle:
<code>id | game | point -------+--------+-------- 1 | x | 5 1 | z | 4 2 | y | 6 3 | x | 2 3 | y | 5 3 | z | 8</code>
Um den id
mit dem niedrigsten point
-Wertzust für jedes game
zu erhalten, können wir eine Unterabfrage und einen inneren Join verwenden. Die Unterabfrage identifiziert das Minimum point
für jedes id
:
<code class="language-sql">SELECT Id, MIN(Point) AS MinPoint FROM TableName GROUP BY Id</code>
Diese Unterabfrage ergibt id
s und ihre jeweiligen Mindestwerte point
. Die Hauptabfrage verbindet dieses Ergebnis dann mit der ursprünglichen Tabelle und filtert für Zeilen, die den Mindestpunkten entsprechen:
<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>
Die Ausgabe der Abfrage:
<code>id | game | point -------+--------+-------- 1 | z | 4 3 | x | 2 2 | y | 6</code>
Diese Methode gibt effektiv eindeutige Zeilen zurück, die den Mindestwert point
für jedes id
enthalten, und liefert einen sauberen Datensatz für die nachfolgende Analyse.
Das obige ist der detaillierte Inhalt vonWie rufe ich eindeutige Zeilen mit dem Mindestwert in SQL ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!