oracle查询当前用户下所有的表,包括所有的字段

时间:2021-09-02 03:57:12

oracle查询当前用户下所有的表,包括所有的字段

背景:

? 前两天接到一个需求,做一个展示所有表名,表备注,表数据,表字段数,点击查看按钮查看字段名和注释,支持导出。

在Oracle中,可用使用视图USER_TABLES查看当前用户有哪些表,都有多少数据:

table_name:表名,field_num:表字段数,comments:表注释,count_rows(table_name):统计表数据

SELECT * FROM USER_TABLES;

USER_TAB_COLUMNS:表中的所有列

SELECT * FROM USER_TAB_COLUMNS

user_columns:可以查询当前用户下所有表中的字段以及注释,col_name:字段名,comments:字段注释

我们用的是国产虚谷数据库,语法和oracle相似,具体实现sql如下:

select  t.table_name as "表名",t.field_num as "字段统计",t.comments as "表备注",count_rows(table_name)  "数据统计" ,c.col_name as "字段名",c.comments as "字段备注"
from user_tables t inner join user_columns c on c.table_id = t.table_id order by t.table_name asc;

查询结果截图:

oracle查询当前用户下所有的表,包括所有的字段