MySQLで集計関数を使って列の値の平均を求める方法
MySQLで集計関数を使って列の値の平均を求める方法
MySQLでは、SUM()やAVG()などの集計関数を利用することで、テーブル内の列の値から平均値を簡単に算出できます。この記事では、サンプルテーブルを作成し、実際に平均値を求めるまでの手順をわかりやすく解説します。
1. テーブルを作成する
まず、CREATE TABLE文でテーブルを作成しましょう。
mysql> create table DemoTable
(
Number int
);
Query OK, 0 rows affected (0.79 sec)2. レコードを挿入する
次に、INSERTコマンドを使ってテーブルにデータを追加します。
mysql> insert into DemoTable values(56); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(78); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable values(89); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable values(98); Query OK, 1 row affected (0.09 sec) mysql> insert into DemoTable values(91); Query OK, 1 row affected (0.35 sec) mysql> insert into DemoTable values(96); Query OK, 1 row affected (0.15 sec)
3. データを確認する
SELECT文でテーブル内の全レコードを表示してみましょう。
mysql> select *from DemoTable;
実行結果は以下の通りです。
+--------+ | Number | +--------+ | 56 | | 78 | | 89 | | 98 | | 91 | | 96 | +--------+ 6 rows in set (0.00 sec)
4. 平均値を求めるクエリを実行する
列の値の平均を求めるには、SUM()関数と算術演算を組み合わせた次のようなクエリが使えます。
mysql> select (sum(Number)*(100))/(100+500) from DemoTable;
実行結果:
+-------------------------------+ | (sum(Number)*(100))/(100+500) | +-------------------------------+ | 84.6667 | +-------------------------------+ 1 row in set (0.00 sec)
補足:AVG()関数を使うともっと簡単
単純に平均値だけを求めたい場合は、MySQL標準のAVG()関数を使うのが最もシンプルです。
mysql> select avg(Number) from DemoTable; +-------------+ | avg(Number) | +-------------+ | 84.6667 | +-------------+ 1 row in set (0.00 sec)
このように、AVG()関数を使えば合計値を手動で計算することなく、1行のクエリだけで平均値を取得できます。加重平均など特別な計算が必要な場合はSUM()との組み合わせを、通常の平均であればAVG()を使うなど、目的に応じて使い分けるとよいでしょう。
-
【MySQL】サブクエリとLIMIT句で最初の3つの値のみの平均を求める方法
MySQLでは、テーブル内の先頭数件のレコードだけを対象に集計処理を行いたいケースがあります。例えば、5つのスコアが格納された列から、最初の3つの値のみの平均を求めたい場合です。このような場合には、サブクエリとLIMIT句を組み合わせることで簡単に実現できます。 本記事では、テーブルの作成からデータ挿入、そして最初の3つの値の平均を取得するまでの手順を順番に解説します。 1. テーブルの作成 まず、スコアを格納するためのテーブルを作成しましょう。 mysql> create table DemoTable ( Score int ); Qu
-
MySQLで列の最大値を取得する方法をわかりやすく解説
MySQLで特定の列の最大値を取得するには、MAX(columnName)関数を使用します。本記事では、その基本的な使い方に加えて、データベースやテーブルの設計に関する前提知識もあわせて解説します。MySQLのデータベースとテーブルの基礎MySQLをインストールする前に、まず使用するバージョンと配布形式(バイナリファイルか、ソースファイルからビルドするか)を決定することが重要です。新しく作成したばかりのデータベースには、当然ながらテーブルはまだ存在しません。データベース設計において最も重要なのは、以下の要素を決めることです。データベース全体の構造必要となるテーブルの一覧各テーブルに含まれる列(