最近、GROUP BYについてまさかのド忘れをするという事態に陥ったので覚書。
よく使うものなので普通にしてれば忘れるようなことはないと思いますが……。
GROUP BYは、SUMなどの集計関数を使いたいときに必要になります。
たとえば個人別の総得点を調べる時なんかに使えます。
今回は以下のテーブルを使用します。
name | subject | score |
---|---|---|
鈴木 | 国語 | 70 |
鈴木 | 数学 | 80 |
田中 | 国語 | 90 |
田中 | 数学 | 60 |
田中 | 英語 | 80 |
山田 | 数学 | 70 |
使用するSQLは以下の通り。
SQL
SELECT name, SUM(score) FROM TABLE1 GROUP BY name;
実行結果は以下の通り。
name | SUM(score) |
---|---|
鈴木 | 150 |
田中 | 230 |
山田 | 70 |
上記のように、個人別の総得点をSQLによって算出することができます。
様々な場面で使えるので、必ず覚えておいてください。普通は忘れないと思いますが……。