本文章给各位朋友简单的介绍一下关于mysql中查看数据库中所有表的记录数实现方法,有需了的朋友可参考。

如果使用mysql的版本在5.0及以上,可以通过查询information_schema库中的tables表来获取,该表中使用table_rows记录表的行数信息。例如查看库testdb中所有表的记录数:

代码如下

use information_schema;

table_name,table_rows from tables

where TABLE_SCHEMA = 'testdb'

order by table_rows desc;

不过需要注意的是,对于InnoDB表,table_rows行计数仅是大概估计值。

另外一种办法还是借助information_schema库的tables表,来拼接出一个条sql语句,例如:

代码如下

use information_schema;

select concat(

'select "',

TABLE_name,

'", count(*) from ',

TABLE_SCHEMA,

'.',

TABLE_name,

' union all'

) from tables

where TABLE_SCHEMA='testdb';

记录一下mysql中查看所有表的记录数:

TABLE_SCHEMA : 名

TABLE_NAME:表名

ENGINE:所使用的存储引擎

TABLES_ROWS:记录数

DATA_LENGTH:数据大小 得到的结果是以字节为单位,除1024为K,除1048576(=1024*1024)为M

INDEX_LENGTH:索引大小

代码如下

use information_schema;

select table_schema,table_name,table_rows from tables order by table_rows desc;

查看指定大小:

代码如下

SELECT sum(DATA_LENGTH)+sum(INDEX_LENGTH) FROM information_schema.TABLES where

TABLE_SCHEMA='数据库名';

得到的结果是以字节为单位,除1024为K,除1048576(=1024*1024)为M

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐