SQLでグループごとの検索を行う方法
SQLでは、GROUP BY句を使ってグループごとに集計するクエリが可能
以下の文を日本語で自然に言い換えてください。ただし、1つのオプションのみが必要です: 文法は次のとおりです: [文]
○列1、○列2、…○列n を選択
表名から
GROUP BY 列1, 列2, … 列n
条件があれば
なお、列1、列2、…列nは抽出したい列名であり、表名は抽出したいテーブル名であり、条件は任意の絞り込み条件である。
グループ化クエリにおいて、GROUP BY句により結果を指定された列に基づいてグループ化します。これにより、指定された列の値ごとに結果をグループ化し、合計、平均、最大値、最小値などの集約操作を各グループに対して実行できます。
集計結果に対してフィルタリングを行うHAVING句は、WHERE句が元データに対してフィルタリングを行うのに類似しています。HAVING句の条件は、集計関数の結果に基づいて判断されます。
ここには、その例が示されています。
SELECT department, COUNT(*) as total
従業員から
GROUP BY 部署
COUNT(*) > 3 を満たす場合
このクエリでは、各部門の従業員数がカウントされ、従業員数が3人より多い部門のみが返されます。