比如现在我有个数据库lzz,里面有很多表,我想要导出里面的数据,但是又怕表数据太多了太浪费时间,我就想如果知道每个表有多少条记录就好了,这样子对导出数据的时间也有个大概的估摸。怎么做到这件事呢?难道对每个表执行一下select count(*) from xxx?如果表大多,复制过来复制过去的麻烦死了。
我们知道,mysql里面有个自带的数据库information_schema,这个information_schema数据库里面的表存放的是你自己建立的数据库的元数据信息,什么元数据信息呢?比如:数据库名字,数据库有哪些表,每个表有哪些列.......这些信息都能在information_schema这个数据库里面找到。知道了这些信息,要想实现上面的功能,那还不是so easy:
select a.TABLE_NAME,a.TABLE_ROWS from information_schema.TABLES
a WHERE a.TABLE_SCHEMA=‘lzz’
ORDER BY a.TABLE_ROWS desc
执行结果: