Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 请参见oracle表之间的联接?_Sql_Oracle - Fatal编程技术网

Sql 请参见oracle表之间的联接?

Sql 请参见oracle表之间的联接?,sql,oracle,Sql,Oracle,我有一个查询,显示给定表空间的所有表: select tablespace_name, table_name from ALL_tables where tablespace_name = 'final'; 我希望了解数据库/表空间中的表是如何链接的 是否有一种方法可以获取与外键相等的所有主键?或所有外键及其引用的键的列表。试试这个--为所有者或表名添加筛选器 with col_list as (select owner, constraint_name, listagg(column_nam

我有一个查询,显示给定表空间的所有表:

select tablespace_name, table_name from ALL_tables
where tablespace_name = 'final';
我希望了解数据库/表空间中的表是如何链接的

是否有一种方法可以获取与外键相等的所有主键?或所有外键及其引用的键的列表。

试试这个--为所有者或表名添加筛选器

with col_list as
(select owner, constraint_name, listagg(column_name,',') within group (order by position) col_list
      from dba_cons_columns
      group by owner, constraint_name) 
select pk.owner, pk.constraint_name pk, fk.owner, fk.constraint_name fk, pk_cols.col_list, fk_cols.col_list 
from dba_constraints pk
join dba_constraints fk
on pk.constraint_name=fk.r_constraint_name
and pk.owner=fk.r_owner
and fk.constraint_type='R'
join col_list pk_cols
on pk_cols.constraint_name=pk.constraint_name
and pk_cols.owner=pk.owner
join col_list fk_cols
on fk_cols.constraint_name=fk.constraint_name
and fk_cols.owner=fk.owner