MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのSUM()で合計を求め、AS句を使って列見出しに別名(エイリアス)を指定する方法

MySQLでは、SUM()関数を使って数値列の合計値を簡単に計算できます。しかし、そのまま実行すると列見出しが「sum(Salary)」のように表示され、読みづらくなります。
そこで活用したいのが「AS」キーワードによる別名(エイリアス)の指定です。この記事では、基本的な使い方を具体例とともに解説します。

別名(エイリアス)を指定する基本構文

列見出しに任意の別名を表示するには、次の構文を使用します。

select sum(yourColumnName) as anyAliasName from yourTableName;

サンプルテーブルの作成

まず、動作確認用のテーブルを作成しましょう。

mysql> create table DemoTable1800
    (
    Salary int
    );
Query OK, 0 rows affected (0.00 sec)

レコードの挿入

続いて、insertコマンドでテーブルにいくつかのデータを登録します。

mysql> insert into DemoTable1800 values(18000);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1800 values(32000);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1800 values(50000);
Query OK, 1 row affected (0.00 sec)

テーブルの中身を確認する

select文ですべてのレコードを表示してみます。

mysql> select * from DemoTable1800;

実行すると、次のような結果が出力されます。

+--------+
| Salary |
+--------+
|  18000 |
|  32000 |
|  50000 |
+--------+
3 rows in set (0.00 sec)

SUM()で合計を求め、別名を設定するクエリ

それでは、合計を計算しながら列見出しに「Total」という別名を指定してみましょう。

mysql> select sum(Salary) as Total from DemoTable1800;

実行結果は以下のとおりです。

+--------+
| Total  |
+--------+
| 100000 |
+--------+
1 row in set (0.00 sec)

まとめ

このように、asキーワードを使うことで、SUM()関数による集計結果の列見出しを「Total」など分かりやすい名前に変更できます。
別名を付けることで結果セットが読みやすくなるだけでなく、PHPやPythonなどアプリケーション側から結果を参照する際にも列名でアクセスしやすくなり、コードの可読性・保守性が向上します。日常的な集計クエリにはぜひ活用してください。

  1. MySQLで特定のカラム名を持つテーブルを検索する方法

    MySQLで特定のカラム名(列名)を持つテーブルを探したい場合は、システムビューである information_schema.columns を利用します。このビューにはデータベース内のすべてのテーブルとカラムの情報が格納されているため、条件を指定して検索するだけで、目的のカラムを持つテーブルを簡単に特定できます。 基本構文 カラム名からテーブル名を検索する際の基本的な構文は以下の通りです。 select distinct table_name from information_schema.columns where column_name like %yourSearchValue% a

  2. MySQLで重複する列の値を検索して表示する方法(GROUP BY HAVING句の使い方)

    MySQLでテーブル内の重複データを検索したい場面は多くあります。例えば、登録データの重複チェックやデータクレンジングなどが挙げられます。このような場合には、GROUP BY句とHAVING句を組み合わせることで、簡単に重複する列の値を抽出できます。 重複検出の基本的な考え方 GROUP BY句で列の値ごとにレコードをグループ化し、HAVING句で「同じ値が2件以上存在するグループ」だけを絞り込むことで、重複している値だけを取り出すことができます。 サンプルテーブルの作成 まず、検証用のテーブルを作成します。 mysql> create table DemoTable1858