oracle查询一个表被那些表引用,分别对应的引用列等,SQL语句如下:
select fk_col.constraint_name, fk_col.table_name, fk_col.column_name
from user_constraints pk, user_constraints fk, user_cons_columns fk_col
where pk.table_name = 'TEST'
and pk.constraint_type = 'P'
and fk.r_constraint_name = pk.constraint_name
and fk_col.constraint_name = fk.constraint_name
order by 2, 3;
select c.table_name rtable,c.column_name rcol,d.table_name mtable,d.column_name mcol
from (select a.constraint_name,b.table_name,b.column_name,a.r_constraint_name
from user_constraints a, user_cons_columns b
WHERE a.constraint_type='R'
and a.constraint_name=b.constraint_name
) c,
(select distinct e.r_constraint_name,f.table_name,f.column_name
from user_constraints e, user_cons_columns f
WHERE e.r_constraint_name=f.constraint_name
)
d where c.r_constraint_name=d.r_constraint_name;