데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

단순 서브쿼리 질문입니다.

잎세 2016.04.09 10:17 Views : 2583

안녕하세요.

sql 초보입니다.

 

단순 서브쿼리 질문 드립니다.

 

TEST 테이블에는

 

PRNT_ITEM_CD           CHILD_ITEM_CD

A001B002
B002C001

 

이렇게 있다고 가정하고

하기 쿼리를 실행했을 때

SELECT  A.*
FROM  TEST A(NOLOCK)
WHERE  A.PRNT_ITEM_CD NOT IN (
                                                                     SELECT  B.PRNT_ITEM_CD
                                                                     FROM  TEST B (NOLOCK)
                                                                    WHERE  B.CHILD_ITEM_CD = A.PRNT_ITEM_CD
                                                                 )

결과값이

PRNT_ITEM_CD        CHILD_ITEM_CD

A001                         B002
B002                         C001

 

이렇게 나오는데 왜 이렇게 나오는지 궁금합니다.

제 생각에는

경우의 수를 따지면

 

일단 메인 조회데이터 기준으로 서브쿼리 실행시 나올수 있는 경우의 수를 찾으면 아래와 같고

 

A.PRNT_ITEM_CD        B.CHILD_ITEM_CD

A001                            B002

A001                            C001

B002                            B002

B002                            C001

 

서브쿼리상에서 이렇게 나온 것중에서 A.PRNT_ITEM_CD NOT IN 이라고 했으니

A.PRNT_ITEM_CD가 B002 를 제외한 A001이 나와야 맞는게 아닌지요?

 

이에 대한 설명을 아주 쉽게 답변좀 부탁드립니다.

감사합니다.

No. Subject Author Date Views
» 단순 서브쿼리 질문입니다. [2] 잎세 2016.04.09 2583
9270 유저가 행 정렬을 마음대로 바꿀 수 있게하려면.. [2] 솜이불 2016.04.07 2558
9269 응급모드 관련 문의 [1] rollback 2016.04.07 3107
9268 access 쿼리 질문!! [4] Blue2 2016.04.07 2204
9267 완전 초보입니다. UPDATE 질문입니다. [3] 떠벙이 2016.04.07 2287
9266 tempdb 용량이 줄어들지 않습니다 [1] 조굴 2016.04.06 2255
9265 SQL2012 복구관련 질문입니다! [1] 마스터를위하여 2016.04.05 2365
9264 최근 답변글 표시하기..? [4] 헨씀히포 2016.04.04 2058
9263 Create Table 하면서 제약조건명을... [4] rollback 2016.04.04 2234
9262 이런식으로 값을 가져올수있을까요?! [1] Blue2 2016.04.04 2162
9261 포인트 충전 및 사용시 방법문의 드립니다. [3] 후오로 2016.04.02 2491
9260 T-SQL 과 jdbc [1] 그러던가 2016.04.01 2114
9259 CPU 과점유 상태 분석에 대한 문의 [6] dontcryme 2016.03.31 3080
9258 특정 칼럼에 여러개의 값을 받을때의 질문입니다. [6] karyaladin 2016.03.31 2032
9257 MSSQL 쿼리문 검색을 통하여 엑셀파일 첨부하여 메일링 보내는 프로시저 [질문] 곰요 2016.03.30 3037
9256 특정기간 동안 월, 시작일, 종료일을 가지고 오고 싶은데요. [3] DOOLLY 2016.03.30 3477
9255 REPLACE 의 INTO 구문이 잘못되었다고는 하는데 오류좀 찾아 주세요. [4] 니가사와맥주 2016.03.29 2351
9254 sqlserver.exe 서비스가 2개가 실행되는 현상 [1] 생초보 2016.03.29 2202
9253 복제.. 게시 구독에서.. 게시 테이블 변경시 괜찮을까요? 공유맨 2016.03.28 2286
9252 두 테이블 합치기 [4] Blue2 2016.03.28 3333





XE Login