如何创建一个表来存储表名称和表计数列表?

时间:2018-08-08 15:04:41

标签: sql oracle

我正在尝试创建一个存储表名称和表计数的表。

我已经有了表格列表。如何使用此列表获取表的所有计数?

结果应该是这样的:

TABLE_NAME   NUM_ROWS
------------ --------
tableName1   result from select count(*) from tableName1     
...

有什么想法吗?

先谢谢了。

1 个答案:

答案 0 :(得分:1)

有关“快速且肮脏”的解决方案,请尝试。

SELECT TABLE_NAME, NUM_ROWS
FROM USER_TABLES

Oracle存储大量元数据信息。 您可以查询元数据以获得合理的估算值。 可以关闭实际的行数,具体取决于上次分析表的时间和表的更新频率。

如果这不是一个可行的选择,则您将需要编写一个pl / sql过程来遍历表(查询USER_TABLES),并使用EXECUTE IMMEDIATE之类的东西来选择该表上的行数。 / p>