グループ化 1
CoddyのSQLジャーニー「基礎」セクションの一部。レッスン 36/72。
これまでフィールド全体のデータを計算してきました。ここからは、特定のグループのデータを計算する機能を導入します。
従業員
| id | area | age |
|---|---|---|
| 1 | A | 35 |
| 2 | A | 37 |
| 3 | B | 29 |
| 4 | B | 39 |
次のように記述すると
SELECT AVG(age) as avg_age FROM workers全従業員の平均年齢だけが得られます。
各地域の平均年齢を計算したい場合はどうすればよいでしょうか?
そのためには、GROUP BYキーワードを使用できます
SELECT area, AVG(age) as avg_age FROM workers
GROUP BY area結果:
| area | avg_age |
|---|---|
| A | 36 |
| B | 34 |
これで、エリアAの平均年齢は36歳、エリアBの平均年齢は34歳だとわかりました。
チャレンジ
簡単利用可能なテーブルと列:
foods:name,type,pH
食品の種類ごとに、平均pH値を計算してください。
列名は type、ph_average とします。
ROUND(value, 2) を使用して、平均値を小数点以下2桁に丸めてください。
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: SQLプレイグラウンド