dak ブログ

python、rubyなどのプログラミング、MySQL、サーバーの設定などの備忘録。レゴの写真も。

mysqlでテーブルのレコード数を確認する方法

2011-04-06 21:53:15 | mysql
mysqlでテーブルのレコード数を取得する方法です。
select count(*) from テーブル名 でもよいのですが、たとえばDBの全テーブルのレコード数を知りたい場合には、テーブル数だけ select を実行しなければならなくなります。

こんな場合には、mysqlのテーブル情報でも書いた information_schema DB の TABLES テーブルから情報を取得します。

> select table_name, table_rows from information_schema.TABLES;

+------------+------------+
| table_name | table_rows |
+------------+------------+
| tbl1 | 10 |
| tbl2 | 5 |
| tbl3 | 5 |
+------------+------------+
3 rows in set (0.00 sec)

これだと全DBのテーブル情報を取得してしまうので、特定のDBのテーブルのレコード数を取得するには、where table_schema = 'DB名' で対象とする DB を指定します。

select table_name, table_rows from information_schema.TABLES
where table_schema = 'DB名';