Ari*_*ana 6 sql database oracle
我想知道如何通过将所有这些信息“分组”到一张表中来列出 ORACLE 数据库中的所有表和列?具有两列的表:一列包含表的名称,另一列包含该表中的所有列。谢谢。
例如:
TABLE_NAME 列
表 A => 列列表
表 B => 列列表
表 C => 列列表
这是我列出 ORACLE 数据库中所有表的方法:
SELECT TABLE_NAME FROM USER_TABLES;
Run Code Online (Sandbox Code Playgroud)
这是我列出 ORACLE 数据库的一个表中的所有列的方法:
SELECT column_name
FROM user_tab_cols
WHERE table_name = 'TABLE_NAME';
Run Code Online (Sandbox Code Playgroud)
用于listagg获取表中所有列名的列表。
create table table_column_list as
SELECT table_name,listagg(column_name,',') within group(order by column_id) column_list
FROM user_tab_cols
group by table_name;
Run Code Online (Sandbox Code Playgroud)