错误案例
1.在新、旧MYSQL库分别执行以下语句
SELECT table_name,table_rows ,TABLE_COMMENT FROM information_schema.tables WHERE TABLE_SCHEMA = 'bo' ORDER BY table_rows DESC;
为什么是错的呢?
解释:
TABLE_ROWS
行数。一些存储引擎(例如 MyISAM)存储准确的计数。对于其他存储引擎(例如)InnoDB,该值是一个近似值,可能与实际值相差40%至50%。在这种情况下,请使用SELECT COUNT(*)以获得准确的计数。
TABLE_ROWS是NULL对 INFORMATION_SCHEMA表。
对于InnoDB表,行数只是SQL优化中使用的粗略估计。(如果InnoDB表已分区,则也是如此。)
2.正确的方法:
select count(*) from xxx;获取表的准确数据