SELECT CASE WHEN SUM(N) > 1 THEN 'Y'
ELSE 'Y' END
FROM (
SELECT 1 N FROM DUAL
UNION ALL
SELECT 1 N FROM DUAL
)
위의 문장은 'Y' 가 두개 있는 잘못된 문장이기는 하지만 파서에서는 통과됩니다.
결과는 우습게도 다음처럼 2개가 나옵니다. 당연히 1개가 나와야됨에도 말이죠.
Y
Y
SUM(N) 이라는 컬럼을 하나더 추가하면 다음과같이 정상적으로 나옵니다.
Y | 2
서버는 운영체제 AIX, 오라클 10.2.0.3.0 입니다. 신기하죠? 다른 서버나 다른 버전도 결과가 같나요? |