为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM*
【操作系统】:windows 10
【CPU】:intel
【问题描述】*:如何查询查当前用户可以看到的所有表的表名、表数据量、表注释,通过以下sql可以分别查到所有表名、表数据量、表注释,但需要结合起来一次查出。
该sql可以查到所有表名及数据量:
SELECT TABLE_NAME AS “表名”,TABLE_ROWCOUNT(OWNER,TABLE_NAME) AS “数据量” FROM ALL_TABLES;
该sql可以查到表名及注释:
SELECT TABLE_NAME AS “表名”,COMMENTS AS “注释” FROM ALL_TAB_COMMENTS;
结合起来查询时会出现错误“有歧义的列名[OWNER]”,sql如下:
SELECT T.TABLE_NAME AS “表名”,T.TABLE_ROWCOUNT(OWNER,TABLE_NAME) AS “数据量”,U.COMMENTS AS “注释”
FROM ALL_TABLES T,ALL_TAB_COMMENTS U where T.TABLE_NAME =U.TABLE_NAME;
注意到ALL_TAB_COMMENTS 和 TABLE_NAME 中都有“OWNER”列
除了这种方法,还有什么方法可以统计到所有表的表名、表数据量、表注释信息?
SELECT T.TABLE_NAME AS “表名”,TABLE_ROWCOUNT(T.OWNER,T.TABLE_NAME) AS “数据量”,U.COMMENTS AS “注释”
FROM ALL_TABLES T,ALL_TAB_COMMENTS U where T.TABLE_NAME =U.TABLE_NAME;