information_schema中表行数的差异

时间:2018-07-31 22:15:35

标签: mysql mariadb

当我用查询对表进行计数时,information_scheme表如何显示不同的信息行:

select count(id) from mytable

和其他查询:

SELECT 

   engine AS Engine, 
   table_name AS Table, 
   table_rows AS Rows, 
   round(((data_length + index_length) / 1024 / 1024), 2) as Size

FROM

   information_schema.TABLES

WHERE

   table_schema = DATABASE()

ORDER BY 

   Size desc;

我的数据库版本:10.1.33-MariaDB

感谢您的咨询!

1 个答案:

答案 0 :(得分:1)

第一个查询返回正确的值。

第二个查询从information_schema.TABLES获取值,目的是存储有关每个表的统计信息。该表的要点是否有助于MySQL查询优化器选择最佳执行计划。

因此,数量级应该正确,但是此表不得用于获取准确的行数。