我正在将表从1个数据库(MySQL)转移到另一个数据库(MYSQL)。 为了检查表数据,我正在计算给定表中的行数,但是当我执行以下2个查询时,我得到相同表的不同行数。任何人都可以解释为什么会这样吗? (我也上传了查询结果的画面)
查询
1
SELECT COUNT(*) FROM test1; (giving result as 134)
2
SELECT table_name,table_rows FROM information_schema.tables WHERE table_schema='career';(giving result as 171)**
答案 0 :(得分:0)
这里没什么值得担心的。查找行数的正确方法是您的第一个查询:
Select count(*) from table;
即使整行为空, Count(*)
也会对所有行进行计数。但情况并非如此,因为几乎所有的表都有主键,而您刚刚在表中添加了一个。
Table_rows只会粗略估计表格中的行数,如果您不同时间运行该查询,这可能会有所不同。
有关详细信息,请Click here
希望它有所帮助!