SQLでグループ化後に最大値を取得する方法
SQLの持つGROUP BY句と集計関数を利用することでグルーピングを行い、ORDER BY句とLIMIT句を用いることで、最大データを問い合わせる
「table_name」というテーブルがあって、「fieldA」と「fieldB」という2つのフィールドがある場合、fieldAでグループ化し、各グループのfieldBの最大値を検索するには、次のSQLクエリを使用できます。
SELECT A, MAX(B) AS MaxValue
FROM table_name
GROUP BY A
ORDER BY MaxValue DESC
LIMIT 1;
「フィールドAでグループ化し、各グループ内のフィールドBの最大値を算出して、最大値の降順に結果をソートします。LIMIT 1を使用することで、最大値のデータ1件に結果を限定できます。複数の最大値を検索する場合は、LIMIT句の値を調整してください。」