안녕하세요...
slq 결과 값이 이해 안 되는 부분이 있어서 여쭤 봅니다.
SELECT REPLACE('(''4444'',''3333'',''2222'',''1111'')', CHR(35), '') FROM DUAL <-- 이것의 실행 결과는
('4444','3333','2222','1111') <-- 이것 입니다.
위의 결과를 가지고 아래와 같이 실행 시키면..
1) select A.* FROM aaa A WHERE A.BBB IN ('4444','3333','2222','1111') <- 이것은 데이터가 select 됩니다.
2) select A.* FROM aaa A WHERE A.BBB IN (SELECT REPLACE('(''4444'',''3333'',''2222'',''1111'')', CHR(35), '') FROM DUAL) <- 이것은 데이터가 select 안 됩니다.
무엇 때문 일까요????
|