본문 바로가기
Oracle

[Oracle] ORA-01789 : 질의 블록은 부정확한 수의 결과 열을 가지고 있습니다.

by 상후 2021. 9. 26.
728x90
반응형

 

ORA-01789 : 질의 블록은 부정확한 수의 결과 열을 가지고 있습니다.

ORA-01789: query block has incorrect number of result columns

 

발생 원인
UNION, UNION ALL 을 사용하는 쿼리에서 발생하였습니다.
원인은 UNION 하는 두 쿼리의 SELECT 절 컬럼 개수가 일치하지 않아 발생하였습니다.
테스트 케이스

 

SELECT 'A' FROM DUAL;
UNION
SELECT 'B', 'C' FROM DUAL;

 

해결 방법
해결 방법은 간단합니다.
SELECT 절의 컬럼 수를 일치시키면 해결할 수 있습니다.

 

SELECT 'A', 'D' FROM DUAL;
UNION
SELECT 'B', 'C' FROM DUAL;

 

UNION 내 쿼리의 컬럼들을 수정할 때는 UNION 걸린 모든 쿼리들을 전부 수정해야 하고

테스트를 반드시 해봅시다.

 

 

 

 

 

728x90
반응형

댓글