問題:
列に最小の数値を格納する行を検索する必要があります。
例:
私たちのデータベースには、weather
次の列にデータがあります:id
、city
、およびtemperature
。
id | 都市 | 温度 |
---|---|---|
1 | ヒューストン | 23 |
2 | アトランタ | 20 |
3 | ボストン | 15 |
4 | クリーブランド | 15 |
5 | ダラス | 34 |
6 | オースティン | 28 |
気温が最も低い都市を見つける方法は次のとおりです。
解決策:
SELECT id, city, temperature FROM weather WHERE temperature = (SELECT MIN(temperature) FROM weather);
結果は次のとおりです。
id | 都市 | 温度 |
---|---|---|
3 | ボストン | 15 |
4 | クリーブランド | 15 |
ディスカッション:
列の最小値を見つけるには、MIN()
を使用します 集計関数;最小値を見つけるには、列または式の名前を使用します。この例では、サブクエリはtemperature
の最小値を返します 列(サブクエリ:SELECT MIN(temperature) FROM weather
)。メインクエリには、ID、都市、および気温が表示されます。列に最小値の行のみを表示するには、サブクエリでWHEREを使用します(例:SELECT MIN(temperature) FROM weather
)。 WHERE句で、サブクエリの集計関数によって返される値と比較する相対値を持つ列名を配置します(WHERE temperature = (SELECT MIN(temperature) FROM weather)
。