曾经的博客中记得有一篇获取数据库的表总数。现在扩展点,获取所有表的记录数。
select t.table_name,t.num_rows from user_tables t
查询如下:
SQL> select t.table_name,t.num_rows from user_tables t;
TABLE_NAME NUM_ROWS
------------------------------ ----------
CMS_PRIV_ITEM 0
CMS_PRIVILEGE 0
CMS_PREVIEW_PRIVS 0
CMS_PAGE_CHANNEL 0
CMS_WEBSITE_HOTWORDS 0
CMS_WEBSITE_WATERMARK 0
CMS_WEBSITE_THUMBNAIL 0
CMS_CHANNEL_LOGO 0
UWF_WORKTASKHISTORY 1467
UWF_WORKTASK 185
UWF_WORKFUNC 1673
如果只是要获取总表记录数,使用sum函数即可。第一个是之前的表总数,第二条是查询表总记录数。
SQL> select count(t.num_rows) from user_tables t;
COUNT(T.NUM_ROWS)
-----------------
210
SQL> select sum(t.num_rows) from user_tables t;
SUM(T.NUM_ROWS)
---------------
9319604