MySQLのSUMを使って指定フィールドの合計値を計算する方法【初心者向け】

MySQLの【SUM】を使って指定フィールドの合計値を計算する方法を初心者向けに解説した記事です。SELECTで指定したフィールドの値を足し算して集計することができます。WHERE文を使って条件を指定する方法も合わせて紹介。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が1,000以上あります。

MySQLの初心者向けに、基本的な使い方を解説する記事です。

ここでは、SUMを使って指定フィールドの合計値を計算する方法を紹介します。

なお本記事は、MySQLを扱うTechAcademyのPHPオンライン講座の内容をもとにしています。

 

今回の記事の内容は動画でもご覧いただけます。
テキストよりも動画の方が理解しやすいという場合はぜひご覧ください。

 

20160620

 

田島メンター!特定のフィールドの合計を求めるようなものはありませんか?

 

20163020-2

 

今回解説する、sumっていう集計関数がいいね。

 

20160620

 

前に平均を求めるavg(アベレージ)という集計関数がありましたが、sumは合計を求めてくれるんですか?

 

20163020-2

 

そうなんだ。さっそく実際にSUM関数を使って合計を求めてみよう!

 

SUMを使って指定フィールドの合計値を計算する方法

sumを使うと、selectで指定したフィールドの値を足し算して集計することができます。

 

select sum(フィールド名) from テーブル名;

 

実際にやりながら見ていきましょう。今回はこのようなデータの入ったuser というテーブルを使います。

スクリーンショット 2015-01-19 17.02.50

 

5人全員のlogin_numの合計を足して合計値を計算してみましょう。

select sum(login_num) from user;

select sum(login_num) from user;2

すると、78と合計数が算出されました。

もちろん、条件を指定してデータを集計することも可能です。

例えば、whereを使って、idが3以上のレコードのlogin_numを指定して集計してみましょう。

select sum(login_num) from user where id >= 3;

select sum(login_num) from user where id >= 3;

今回のテーブルではidが3〜5のlogin_numの合計値が出力されました。

 

おわりに

きちんと半角で打っているかや、空欄の位置などに気をつけながら活用してみてください。

さらにMySQLを勉強したい場合は、MySQLのAVGを使って指定フィールドの平均値を計算する方法も合わせてご覧ください。

 

20160620

 

合計を求めることが出来ました!集計関数って何か便利ですね。

 

20163020-2

 

ただ、使いどころなどに注意が必要なんだ。

 

20160620

 

どういうところですか?

 

20163020-2

 

書ける場所がselect文だけ(having句にも書ける)、集計関数を使うと結果が1行になる、フィールドのデータ型に注意かな。単純な文字列にsumやavgは使えないよね。

 

MySQLを勉強していて、
・もっと効率的に勉強したい
・誰かに聞きながら学びたい
・自分でWebサービスを作りたい
と思ったことはないでしょうか?

そんな方のために、TechAcademyではオンラインブートキャンプPHP/Laravelコースを提供しています。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間でオリジナルWebサービスを開発することが可能です。

独学に限界を感じている場合はご検討ください。