본문 바로가기
Server/Oracle

[Oracle] ORA-01799: a column may not be outer-joined to a subquery

by 뒹굴거리는프로도 2024. 3. 1.
반응형

 


ORA-01799: a column may not be outer-joined to a subquery


이 오류는 서브쿼리의 열(column)을 외부 조인하려고 할 때 발생합니다. 

아래 예를 보실까요?

SELECT 
    employees.name, 
    dept_details.dept_name
FROM employees
LEFT JOIN (
    SELECT 
        department_id, 
        dept_name
    FROM departments
) dept_details 
ON employees.department_id = dept_details.department_id;

 

위 쿼리를 보면 departments 테이블에서 정보를 가져와서 dept_name을 선택하는 하위 쿼리를 생성하지요.

그런데 employees 테이블의 department_id과 하위 쿼리로 생성된 dept_details에 대한 외부 조인을 시도하면 에러가 발생합니다. 이러한 방식의 조인은 Oracle에서 지원하지 않으므로, ORA-01799 오류가 발생합니다.

이 문제를 해결하려면 department 테이블을 외부 조인하는 방법을 사용해야 합니다.

 

 


 

반응형