자연조인 결과가 다르게 나오는 경우는 무엇일까요? 0 1 1,429

by 김석중 [SQL Query] 자연조인 조인 [2012.09.08 20:35:41]


안녕하세요?

도저히 이해가 안가서 여기저기 도움받을 수 있는 곳을 찾다가 오라클클럽까지 왔습니다. (꾸벅)

다름이 아니라 자연조인에서 결과가 다르게 나와 이유라도 알고 싶은 마음에 조언을 구하고 싶은데요,

우선 테이블 구성은 아래와 같습니다.



과목은 과목번호, 학과는 학과번호가 기본키구요,

수강은 학번, 학과번호, 과목번호 복합키 구성 되어있고, 수강의 학과번호와 과목번호는 과목과 학과의 컬럼을 외래키참조합니다.

조인을 하지 않고 and로만 조건 처리했을 때 아래 그림의 첫번째 쿼리 결과와 두 건이 나와야 정상인데요

자연조인을 하면 두번째 쿼리 결과가 나옵니다. ('과목 natural join 수강' 부분을 ()로 묶어도 결과는 동일합니다.)



그런데, 똑같은 조인에 select 컬럼 부분만 '학과번호'를 추가하면 또 아래처럼 정상으로 나오는데요,

제가 무얼 잘못한걸까요?



고수님들의 조언 부탁드립니다.^^
by 손님 [2012.09.10 11:11:12]
일단 이미지를 봐야 알겠네요..
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입