我对 Stackoverflow 很陌生,为任何错误道歉。
我正在使用 Qlikview。它不允许在两个不同的表中具有相同名称的列。每次我需要从 oracle 导入表时,我都会为每一列创建别名。现在我想处理大型数据库。所以我决定创建一个过程,将所有非约束列作为输入,并在表名中附加列名。
我已经编写了一个具有基本知识的 sql 查询,该查询现在返回主列,但是当访问外键时不起作用(它检索具有外键的列)
我的查询如下
SELECT C.table_name,
C.column_name
FROM user_constraints a,
user_cons_columns b,
ALL_TAB_COLUMNS C
WHERE a.OWNER =b.owner
AND a.OWNER =C.owner
AND C.COLUMN_NAME !=b.COLUMN_NAME
AND a.CONSTRAINT_NAME =b.CONSTRAINT_NAME
AND a.table_name =b.table_name
AND a.table_name =C.table_name
AND a.constraint_type IN('P','R')
AND a.table_name NOT LIKE 'BIN%'
AND A.TABLE_NAME NOT LIKE 'DEF%'
AND b.table_name NOT LIKE 'BIN%'
AND b.TABLE_NAME NOT LIKE 'DEF%'
AND C.table_name NOT LIKE 'BIN%'
AND C.TABLE_NAME NOT LIKE 'DEF%';
任何建议将不胜感激
谢谢