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

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;

用途に応じて両者を使い分けることで、より正確かつ効率的にデータを管理できます。

  1. JavaでMySQLデータベースのテーブルから最後のレコードを取得する方法

    MySQLデータベースからデータを取得するには、JavaのexecuteQuery()メソッドを使用します。本記事では、テーブルに登録された最後のレコード(最新の1件)をJavaプログラムで取得する手順を、サンプルコード付きでわかりやすく解説します。1. MySQLデータベースにテーブルを作成するまず、MySQLデータベース上にテーブルを用意します。ここでは「sample」データベースに、以下のようなテーブルを作成します。mysql> create table javaGetDataDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRI

  2. JavaでMySQLテーブルのカラム数を取得・カウントする方法

    MySQLテーブルのカラム(列)数をJavaで取得するには、ResultSetMetaDataインターフェースを使用します。ResultSetMetaDataを活用すれば、カラムの総数だけでなく、各カラムの名前やデータ型といった詳細情報も簡単に取得できます。前提:サンプルテーブルの作成まずは動作確認用のテーブルを作成しましょう。以下のSQLでは、3つのカラムを持つ「DemoTable」を作成しています。mysql> create table DemoTable     -> (     -> St