我知道一个声明,我可以发布以找出我正在寻找的列的表:
SELECT DISTINCT(table_name)
FROM all_tab_cols
WHERE column_name = 'EMP_ID';
Run Code Online (Sandbox Code Playgroud)
但是,我应该如何修改这个以便我可以找到既有说EMP_ID又有的表EMP_NAME?
OMG*_*ies 11
使用:
SELECT table_name
FROM all_tab_cols
WHERE column_name IN ('EMP_ID', 'EMP_NAME')
GROUP BY table_name
HAVING COUNT(DISTINCT column_name) = 2
Run Code Online (Sandbox Code Playgroud)
计数比较必须等于IN子句中定义的参数数量.
...但这是一种更安全的方法来确定表格,以防它们是重复的:
SELECT table_name
FROM all_tab_cols
WHERE column_name IN ('EMP_ID', 'EMP_NAME')
GROUP BY table_name, owner
HAVING COUNT(column_name) = 2
Run Code Online (Sandbox Code Playgroud)