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

MySQLの【AVG】を使って指定フィールドの平均値を計算する方法を初心者向けに解説した記事です。AVG構文は、SELECTで指定したフィールドの値の平均値を出すことができます。WHEREを使って、計算する条件を指定可能です。

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

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

今回は、AVGを使って指定フィールドの平均値を計算する方法を紹介します。

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

 

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

 

大石ゆかり

田島メンター!価格のフィールドで、データ型は数値なんですけど、平均値みたいなものを出すことは出来ないんでしょうか?

田島悠介

データベースには集計関数があるから、すぐに出来るんだよ。

大石ゆかり

便利ですねー。

田島悠介

実際に集計関数を使ってみよう!

 

AVGを使って指定フィールドの平均値を計算する方法

avgを使うと、selectで指定したフィールドの値の平均値を出すことができます。

 

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

 

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

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

 

5人全員のlogin_numの平均値を出してみます。

select avg(login_num) from user;

select avg(login_num) from user;

全員のlogin_numを足した78の平均値、15.6が出力されました。

 

もちろん、条件を指定してデータの平均値を出すことも可能です。

whereを使って、idが3以上のレコードのlogin_numの平均値を出してみましょう。

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

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

54を3で割った平均値、18がでました。

 

 

おわりに

AVGを使って指定フィールドの平均値を計算する方法は以上です。

MySQLの基礎をさらに勉強したい場合は、MySQLでGROUP BYを使ってデータを集計する方法も合わせてご覧ください。

 

大石ゆかり

avg(フィールド名)で簡単に平均値が出てきました!

田島悠介

ただ、集計とかには少し難しいところがあるんだよね。

大石ゆかり

どうしてですか?SQL1行で簡単に結果が出たじゃないですか。

田島悠介

集計すると複数のデータが1行になってしまうんだ。後、例えば家計簿のような感じで、おかし代とか日用品の代金とか費目別で集計したいときとか、あるよね。単純な集計なら簡単なんだけど。

 

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

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

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

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