我在子查詢中查詢子查詢。內子查詢涉及的外部查詢結果:Oracle 10g和11g之間標識符的可見性
SELECT
employees.ENAME,
employees.DEPTNO,
(
SELECT * FROM
(SELECT DNAME FROM DEPT WHERE DEPT.DEPTNO = employees.DEPTNO)
) DNAME
FROM EMP employees
;
對於Oracle 10.2.0.1.0它工作正常,但甲骨文11.2.0.4.0拋出一個錯誤:
ORA-00904: "EMPLOYEES"."DEPTNO": invalid identifier"
如果我刪除中間的查詢,它也適用於Oracle 11.所以我認爲這是標識符可見性的問題。
上面的代碼是我的問題的簡化。出於某種原因,我無法解決另一個連接的問題,並且我無法使用存儲過程或輔助視圖。如何在單個查詢中使此代碼與Oracle 11一起工作?
請包括確切的DB版本。 – 2015-02-24 10:14:35
對於'12.1.0.2'不存在問題 – 2015-02-24 10:18:31
根據@LalitKumarB的回答,最好的解決方案是聯繫Oracle支持或應用11g的最新補丁集。 – ibre5041 2015-02-24 10:34:50