조인 관련 질문입니다. 0 5 2,824

by wenzie [Oracle 기초] inner join outer join [2013.04.17 13:08:10]


안녕하세요~

join 관련 질문입니다.


A타입

select A.* FROM
TABLE1 A,
TABLE2 B,
TABLE3 C
WHERE A.ID=B.ID
AND B.DEP = C.DEP



B타입

SELECT A.* FROM
TABLE1 A INNER JOIN
TABLE2 B
ON A.ID = B.ID
INNER JOIN 
TABLE3 C
ON B.DEP = C.DEP


A타입과 B타입중 어느게 좋은가요?

어떤분이 B타입은 파싱(?)인가 한번 더 한다고 A타입이 더 좋은거라고 했거든요

결과는 같겠지만 궁금해서 여쭤봅니다.^^

또한 OUTER JOIN 과 (+)도 궁금하네요..

좋은하루 되세요

감사합니다~~
by 손님 [2013.04.17 13:09:31]

오저두 이거 궁금해요

이너조인은 어떤 경우때 쓰는건가요

by 우리집아찌 [2013.04.17 13:12:19]

같지않을까요?

by 마농 [2013.04.17 13:14:58]

글쎄요...
같은 결과를 내는 다른 표현일 뿐이라 생각되네요.
물론 오라클 입장에서 b타입을 a타입으로 변환해서 수행될수도 있겠지만...
(실제 그런지는 내부를 까봐야 알수 있겠구요.)
이거에 포커스를 맞추어 좋다 나쁘다 판단할 필요가 있를런지요?
좋다 나쁘다는 실행계획이 다른 경우에나 비교하는게 맞다고 생각됩니다.


by wenzie [2013.04.17 13:22:52]
아 그렇군요..

실행계획은 제가 테스트해본건 똑같았습니다.

정확하지는 않지만 파싱플랜(?)은 다르다고 들은거 같아서요..

답변 감사합니다~^^

by 신이만든짝퉁 [2013.04.17 14:04:43]
B 타입같은 경우 ANSI 쿼리라서  ANSI 쿼리를 지원하는 모든 DBMS에서 사용가능하다고 알고 있습니다.
A 타입같은 경우는 오라클 호환 DBMS 에서만 사용가능하고요.

ANSI 쿼리로 작성하면 나중에 DB가 변경될때 작업부하가 많이 줄어들지 않을까요?
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입