スポンサーリンク

【MySQL】group byを使ってデータを取得する方法ご紹介。

SQL
スポンサーリンク

今回の記事はMySQLを用いてgroup byを使ってデータを取得する方法をご紹介する内容になっています。初心者にも分かりやすいように記載していくので是非参考にしてみて下さい。

スポンサーリンク

group byの使い方

group byはどのように使うかですが、データをまとまりごとに表示したい場合などに有用です。例えば下記のようなデータを考えてみましょう。

作り方は簡単で、下記コマンドで作れます。

#サーバ起動
mysql.server start

#ログイン
mysql -u root -p 

#データベース作成
mysql> CREATE DATABASE practice001
mysql> connect practice001
mysql> create table table3  (id varchar(10), name varchar(10),cost int);
mysql> insert into table1 (id,name,age) values ("item1","pen",300),("item2","pen",500),("item3","pencil",100),("item4","pencil",50),("item5","pen",1000);

では確認してみましょう。

mysql> select * from table3;
+-------+--------+------+
| id    | name   | cost |
+-------+--------+------+
| item1 | pen    |  300 |
| item2 | pen    |  500 |
| item3 | pencil |  100 |
| item4 | pencil |   50 |
| item4 | pen    | 1000 |
+-------+--------+------+
5 rows in set (0.00 sec)

画像と似た構成にできました。では例えばここから「pen」と「pencil」の合計金額を計算したい場合どのように取得しましょう。SQLのsumを用いて全てのコストを足していくでもできるのですが、数が多いと不可能なのでgroup byを用いてグループごとに金額を足していきましょう。

group byを使ってデータ取得

mysql> select name,sum(cost) from table3 group by name;
+--------+-----------+
| name   | sum(cost) |
+--------+-----------+
| pen    |      1800 |
| pencil |       150 |
+--------+-----------+
2 rows in set (0.00 sec)

簡単に取得することができました。

では今回の記事は以上です。他にも外部結合内部結合などSQL関連の記事を多数記載しているので是非興味あればサイト内見ていって下さい。

本記事を読んでいただき感謝です。サイトを訪れていただいた方はプログラミング勉強中かと思いますのでプログラミング勉強のコツを合わせてご紹介。

スポンサーリンク
スポンサーリンク
スポンサーリンク

ブログに関しては500円程度かかりますが、それ以外は無料です。知識の吸収と並行してアウトプットは非常に効率が良いです。テックアカデミーに関しては講座レベルが高いにも関わらず、無料体験や人気口座も大幅値下げがあるので、重点的に学びたいものを無料体験してみてください。

転職時にも、エンジニアからテックアカデミー・Paizaは認知度が高いので、未経験入社採用を行う際履歴書で目に留まります。特にPaizaのスキルレベルA・SなどはIT業界でも評価されます。

テックアカデミー・Paizaの無料登録ができる期間中にぜひご利用してみてください。私も活用経験ありです。

SQL
スポンサーリンク
スポンサーリンク
ともぶろぐ

コメント

タイトルとURLをコピーしました