MySQL表和行计数

时间:2010-12-06 19:55:55

标签: mysql sql

我正在尝试获取表的列表及其行数。我一直在使用这个查询:

SELECT TABLE_NAME, TABLE_ROWS 
FROM INFORMATION_SCHEMA WHERE TABLE_SCHEMA = 'myDatabase'

我发现这有时会返回null。我想做的是抓住这可能做类似于

的事情
IFNULL ( TABLE_ROWS, SELECT COUNT(*) FROM ????)

只有我不确定我应该为????输入什么 如何根据TABLE_NAME列使其动态化?。

编辑:附加信息:我发现未显示的“表格”实际上是视图。

2 个答案:

答案 0 :(得分:2)

不妨

SHOW TABLE STATUS FROM YOUR_DATABASE;

它始终返回一个名为Rows的列,该列是该表中的行数。

答案 1 :(得分:0)

来自the documentation

  

如果表位于INFORMATION_SCHEMA数据库中,则TABLE_ROWS列为NULL。

所以,你可能不需要它。