ORA-01789: 질의 블록은 부정확한 수의 결과 열을 가지고 있습니다. (ORA-01789: query block has incorrect number of result columns)

ORA-01789: 질의 블록은 부정확한 수의 결과 열을 가지고 있습니다. 오류를 해결하는 방법에 대해 알아보도록 합시다.

ORA-01789 원인

해당 오류는 집합 연산자(set operator : UNION ALL, UNION, INTERSECT, MINUS)에서 열의 개수가 맞지 않을 때 발생합니다. (질의 블록 부정확한 수 결과 열)

ORA-01789 해결하기

SELECT 블록에서 열의 개수가 맞지 않는 부분을 확인해 주세요.

집합연산자별로 나누어 SELECT 부분을 비교하시면 됩니다.

잘못된 예

SELECT 'A', 'B' FROM DUAL
UNION ALL
SELECT '1' FROM DUAL

바른 예

SELECT 'A', 'B' FROM DUAL
UNION ALL
SELECT '1', '2' FROM DUAL

댓글