猿问

获取MySQL数据库中所有表的记录计数

获取MySQL数据库中所有表的记录计数

有没有办法在不运行SELECT count()每个表的情况下获取MySQL数据库中所有表中的行数?



交互式爱情
浏览 1034回答 3
3回答

杨__羊羊

SELECT SUM(TABLE_ROWS)       FROM INFORMATION_SCHEMA.TABLES       WHERE TABLE_SCHEMA = '{your_db}';但是请注意文档:对于InnoDB表,行计数只是 SQL优化中使用的粗略估计。您需要使用COUNT(*)来获得准确的计数(这更昂贵)。

手掌心

你可以把一些东西和Tables表放在一起。我从来没有这样做过,但看起来它有一个TABLE_ROWS列和一个TABLE NAME列。要获取每个表的行,您可以使用如下查询:SELECT table_name, table_rowsFROM INFORMATION_SCHEMA.TABLESWHERE TABLE_SCHEMA = '**YOUR SCHEMA**';
随时随地看视频慕课网APP
我要回答