Database
 sql >> Datenbank >  >> RDS >> Database

So finden Sie Mindestwerte in Spalten

Problem:

Sie möchten Zeilen finden, die den kleinsten numerischen Wert in einer Spalte speichern.

Beispiel:

Unsere Datenbank hat eine Tabelle namens weather mit Daten in den folgenden Spalten:id , city , und temperature .

id Stadt Temperatur
1 Houston 23
2 Atlanta 20
3 Boston 15
4 Cleveland 15
5 Dallas 34
6 Austin 28

So finden Sie Städte mit der niedrigsten Temperatur.

Lösung:

SELECT  id, city, temperature
FROM weather
WHERE temperature = (SELECT MIN(temperature) FROM weather);

Hier ist das Ergebnis:

id Stadt Temperatur
3 Boston 15
4 Cleveland 15

Diskussion:

Um den Mindestwert einer Spalte zu finden, verwenden Sie MIN() Aggregatfunktion; es braucht den Namen der Spalte oder des Ausdrucks, um den Minimalwert zu finden. In unserem Beispiel gibt die Unterabfrage den Mindestwert in temperature zurück Spalte (Unterabfrage:SELECT MIN(temperature) FROM weather ). Die Hauptabfrage zeigt ID, Stadt und Temperatur an. Um nur Zeilen mit minimalen Werten in der Spalte anzuzeigen, verwenden Sie WHERE mit einer Unterabfrage (z. B. SELECT MIN(temperature) FROM weather ). Platzieren Sie in der WHERE-Klausel den Spaltennamen mit dem relativen Wert, der mit dem Wert verglichen werden soll, der von der Aggregatfunktion in der Unterabfrage zurückgegeben wird (WHERE temperature = (SELECT MIN(temperature) FROM weather)). ).