MySQLでCOUNT(*)に別名(変数名)を付けてテーブルのレコード数を表示する方法
MySQLのCOUNT(*)結果に別名を付ける方法
MySQLでは、COUNT(*)の集計結果にAS句を使って別名(エイリアス)を付けることで、あたかも変数のように扱い、テーブル内のレコード数を見やすい形で表示できます。
基本となる構文は以下の通りです。
SELECT COUNT(*) AS 任意の別名 FROM テーブル名;
サンプルテーブルの作成
まず、動作確認用のテーブルを作成します。
mysql> CREATE TABLE DemoTable695 (
FirstName VARCHAR(100)
);
Query OK, 0 rows affected (0.72 sec)レコードの挿入
次に、INSERTコマンドを使ってテーブルにいくつかのレコードを挿入します。
mysql> INSERT INTO DemoTable695 VALUES('Chris');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable695 VALUES('Robert');
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable695 VALUES('David');
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable695 VALUES('Mike');
Query OK, 1 row affected (0.16 sec)登録済みレコードの確認
SELECT文ですべてのレコードを表示してみましょう。
mysql> SELECT *FROM DemoTable695;
実行すると、次のような出力が得られます。
+-----------+ | FirstName | +-----------+ | Chris | | Robert | | David | | Mike | +-----------+ 4 rows in set (0.00 sec)
COUNT(*)に別名を付けてレコード数を取得する
ここからが本題です。以下のクエリのように、COUNT(*)に「TOTAL_NO_OF_RECORDS」という別名を付けて実行します。
mysql> SELECT COUNT(*) AS TOTAL_NO_OF_RECORDS FROM DemoTable695;
実行結果は以下の通りです。
+---------------------+ | TOTAL_NO_OF_RECORDS | +---------------------+ | 4 | +---------------------+ 1 row in set (0.02 sec)
まとめ
このように、AS句で別名を指定するだけで、COUNT(*)の集計結果を任意の列名で表示できます。出力結果が分かりやすくなるだけでなく、アプリケーション側から結果セットを参照する際も、この別名をキーとして値を取得できるため、実務上非常に便利です。なお、別名には日本語ではなく英数字やアンダースコア(_)を使うのが一般的です。
-
MySQLのストアドプロシージャでテーブルのレコードを表示する方法
MySQLでは、ストアドプロシージャ内にSELECT文を組み込むことで、テーブルのレコードを簡単に表示できます。ストアドプロシージャを活用すると、よく使うクエリを再利用可能な形で保存できるため、作業の効率化につながります。ここでは、実際の手順を順番に解説していきます。1. テーブルを作成するまず、サンプル用のテーブルを作成します。mysql> create table DemoTable1933 ( ClientName varchar(20) ); Query OK, 0 rows affected (0.00 sec)2. レコードを挿入する次に、INSERT
-
MySQLでテーブル内の各レコードの出現回数をカウントし、結果を新しい列として表示する方法
MySQLのテーブル内で同じ値が何回出現するかをカウントし、その結果を新しい列として表示したい場合があります。このような集計処理には、COUNT(*)関数とGROUP BY句を組み合わせて使用します。 サンプルテーブルの作成 まず、動作確認用のテーブルを作成しましょう。 mysql> create table DemoTable1942 ( Value int ); Query OK, 0 rows affected (0.00 sec) INSERTコマンドを使って、いくつかのレコードを挿入します。 mysql> insert into DemoTable