問題:
数値列の最大値を見つけたい。
例:
データベースには、product
次の列にデータがあります:id
、name
、year
、およびitems
。
id | 名前 | 年 | アイテム |
---|---|---|---|
1 | ロールパン | 2018 | 345 |
2 | チョコレート | 2017 | 123 |
3 | バター | 2019 | 34 |
4 | ロールパン | 2019 | 456 |
5 | バター | 2018 | 56 |
6 | バター | 2017 | 78 |
7 | チョコレート | 2019 | 87 |
8 | チョコレート | 2018 | 76 |
年間で販売されたアイテムの最大数を見つけましょう。
解決策:
SELECT MAX(items) as max_items FROM product;
結果は次のとおりです。
max_items |
---|
456 |
ディスカッション:
列の最大値を見つけるには、MAX()
を使用します 集計関数;最大値を見つけたい列の名前を引数として取ります。 SELECT
で他の列を指定していない場合 句では、最大値はテーブル内のすべてのレコードに対して計算されます。この例では、クエリはすべてのアイテムの中で最大数を返します。
もちろん、これは集計関数なので、MAX()
グループで使用することもできます。たとえば、各年に販売されたアイテムの最大数を確認したい場合は、次のクエリを記述できます。
SELECT year, MAX(items) AS max_items FROM product GROUP BY year;
最大値はグループごとに計算されます:
year | max_items |
---|---|
2018 | 345 |
2017 | 123 |
2019 | 456 |