使用oracle db中的查询获取表名及其行数

时间:2015-09-06 13:18:09

标签: sql database oracle oracle-sqldeveloper

我有一个数据库,我想获取该数据库中表的名称以及这些表中的数据行数。

select table_name from dba_tables where owner = 'owner'

返回数据库中所有表的名称,但我无法获得每个表中的行数。

查询num_rows列不会实时给出行计数,因为它要求所有表都运行" analyze"指挥他们。

有没有办法使用单个查询获取每个表的列,表名和行数?

1 个答案:

答案 0 :(得分:3)

使用:

SELECT 
   table_name, 
   num_rows,
   last_analyzed
FROM dba_tables 

您可能需要在以下情况下更新统计信息:

exec dbms_stats.gather_schema_stats(ownname => 'NAME');