icon
icon

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

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

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

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

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

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

 

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

 

大石ゆかり

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

田島悠介

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

大石ゆかり

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

田島悠介

そうなんだ。さっそく実際に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を使って指定フィールドの平均値を計算する方法も合わせてご覧ください。

 

大石ゆかり

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

田島悠介

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

大石ゆかり

どういうところですか?

田島悠介

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

 

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

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

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

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