MySQLで特定テーブルの行数を取得する方法|INFORMATION_SCHEMAの使い方
はじめに
MySQLでは、INFORMATION_SCHEMAを利用することで、データベース内の特定のテーブルに格納されている行数(レコード数)を簡単に確認できます。この記事では、サンプルテーブルを作成してデータを挿入し、実際に行数を取得するまでの手順をわかりやすく解説します。
1. サンプルテーブルの作成
まず、CREATE TABLE文を使ってテーブルを作成しましょう。
mysql> create table DemoTable
-> (
-> LastName varchar(100)
-> );
Query OK, 0 rows affected (0.68 sec)
2. レコードの挿入
次に、INSERTコマンドを使用して、テーブルに複数のレコードを追加します。
mysql> insert into DemoTable values('Smith');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('Miller');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('Taylor');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('Brown');
Query OK, 1 row affected (0.29 sec)3. 登録されたレコードの確認
SELECT文を実行して、テーブル内のすべてのレコードを表示してみましょう。
mysql> select *from DemoTable;
出力結果
上記のクエリを実行すると、以下のような結果が得られます。
+----------+
| LastName |
+----------+
| Smith |
| Miller |
| Taylor |
| Brown |
+----------+
4 rows in set (0.00 sec)
4. 特定テーブルの行数を取得するクエリ
データベース「web」内の「DemoTable」というテーブルの行数を取得するには、以下のようにINFORMATION_SCHEMA.TABLESを参照します。table_schemaにデータベース名、table_nameにテーブル名を指定するのがポイントです。
mysql> select table_rows from INFORMATION_SCHEMA.tables
-> where table_schema='web' and table_name='DemoTable';
出力結果
クエリを実行すると、指定したテーブルの行数が返されます。
+------------+
| TABLE_ROWS |
+------------+
| 4 |
+------------+
1 row in set (0.16 sec)
補足:COUNT(*)との違いに注意
なお、INFORMATION_SCHEMAのtable_rowsは、InnoDBテーブルの場合に概算値が返されることがあります。厳密な行数が必要な場面では、以下のようにCOUNT(*)を使用するのが確実です。
mysql> select count(*) from DemoTable;
用途に応じて両者を使い分けることで、より正確かつ効率的にデータを管理できます。
-
JavaでMySQLデータベースのテーブルから最後のレコードを取得する方法
MySQLデータベースからデータを取得するには、JavaのexecuteQuery()メソッドを使用します。本記事では、テーブルに登録された最後のレコード(最新の1件)をJavaプログラムで取得する手順を、サンプルコード付きでわかりやすく解説します。1. MySQLデータベースにテーブルを作成するまず、MySQLデータベース上にテーブルを用意します。ここでは「sample」データベースに、以下のようなテーブルを作成します。mysql> create table javaGetDataDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRI
-
JavaでMySQLテーブルのカラム数を取得・カウントする方法
MySQLテーブルのカラム(列)数をJavaで取得するには、ResultSetMetaDataインターフェースを使用します。ResultSetMetaDataを活用すれば、カラムの総数だけでなく、各カラムの名前やデータ型といった詳細情報も簡単に取得できます。前提:サンプルテーブルの作成まずは動作確認用のテーブルを作成しましょう。以下のSQLでは、3つのカラムを持つ「DemoTable」を作成しています。mysql> create table DemoTable -> ( -> St