안녕하십니까?
초보 sqler 입니다.
다름이 아니라 상관서브쿼리 관련하여 이해가 가질 않아 질문드립니다.
BOM_KGJ(BOM 테이블)
PRNT_ITEM_CD(모품목) CHILD_ITEM_CD (자품목)
A(제품) B(반제품)
A(제품) C(원자재)
B(반제품) D(원자재)
위와 같은 테이블에서 아래와 같이 쿼리를 실행하면
SELECT *
FROM BOM_KGJ A(NOLOCK)
WHERE A.PRNT_ITEM_CD NOT IN (
SELECT B.PRNT_ITEM_CD
FROM BOM_KGJ B (NOLOCK)
WHERE A.PRNT_ITEM_CD = B.CHILD_ITEM_CD
)
제 생각으로는 결과값이
PRNT_ITEM_CD(모품목) CHILD_ITEM_CD (자품목)
A(제품) B(반제품)
A(제품) C(원자재)
이렇게 나와야 할것 같은데....
실제 결과값은 아래와 같이 나옵니다.
PRNT_ITEM_CD(모품목) CHILD_ITEM_CD (자품목)
A(제품) B(반제품)
A(제품) C(원자재)
B(반제품) D(원자재)
제가 무엇을 착각하고 있는지 답변좀 부탁드립니다.
감사합니다.
Comment 1
-
루디먼트
2019.07.28 10:10
서브쿼리의 조건절을 지워보세요.