如何显示所有表名以及列名数?

时间:2013-12-02 09:09:17

标签: oracle

我的数据库有很多表。如何显示所有表名以及每个表中的列名数?

MyOutput中:

------------
table_name       count(*)
----------       --------
table_t1            12
x_a                  5
Y_k                 23
samptabl             0

4 个答案:

答案 0 :(得分:2)

使用USER_TAB_COLS视图获取column_count。

SELECT table_name, count(*) column_count
FROM   user_tab_cols
GROUP BY table_name;

答案 1 :(得分:0)

如果您想要包含其中列数的表名,请在此处使用DBA的答案。

如果您想要表格的名称和行数,请使用以下内容:

SELECT table_name, num_rows
  FROM user_tables;

此查询中的行数表示上次分析表时的数字。要在运行此查询之前返回最新的数字ANALYSE tablename

答案 2 :(得分:0)

如果您想知道整个数据库中的所有table_names和列数,则此处是查询。

查询:SELECT TABLE_NAME,COUNT(COLUMN_NAME)为No_Of_Cols         来自ALL_TAB_COLS         GROUP BY TABLE_NAME;

谢谢, VENU。

答案 3 :(得分:-1)

SELECT table_name,count(*)column_count 来自all_tables GROUP BY table_name;