由于业务需要,表中用到了大量约束,为厘清表与表之间对应关系,整理出如下SQL:
SELECT a.owner, -- 主键拥有者
a.table_name, -- 主键表
b.column_name, -- 主键列
c.owner, -- 外键拥有者
c.table_name,-- 外键表
d.column_name-- 外键列
FROM user_constraints a
LEFT JOIN user_cons_columns b ON a.constraint_name = b.constraint_name
LEFT JOIN user_constraints c ON c.r_constraint_name = a.constraint_name
LEFT JOIN user_cons_columns d ON c.constraint_name = d.constraint_name
WHERE a.constraint_type = 'P'
AND a.table_name = 'TABLENAME'
ORDER BY a.table_name;