database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 40138 게시물 읽기
No. 40138
조건에 따른 조인시 질문입니다.
작성자
백호(cypress)
작성일
2013-05-21 14:20ⓒ
2013-05-21 14:46ⓜ
조회수
6,658

안녕하세요.

제가 좀 혼란스러워 고수님들의 조언을 듣고자 이렇게 글을 올립니다.

 

테이블 A = 약 10억만건

테이블 B = 약 2만건

이라고 가정하겠습니다.

 

SELECT *

FROM A, B

WHERE A.ID = B.ID ---------> 핵심

 

핵심이라 표기된 구문이 문제 입니다.

 

쿼리를 보시면 A테이블의 데이터가 많기에 B테이블이 메인이되어

쿼리를 짜는게 맞다고 봅니다.

 

그런데 위 쿼리를

 

SELECT *

FROM A, B

WHERE B.ID = A.ID -------------> 위치 변경

 

이렇게 변경하면

B테이블이 메인이 되면서 쿼리가 진행되는건지 궁금합니다.

 

물론 여러 요건들이 작용을 한다는거 잘알지만 그런거 배제하고

단순히 위의 내용만을 기준으로 삼아서 말입니다.

 

그럼 답변 부탁드리겟습니다.

감사합니다.

 

----------------------------------------------------------------

 

논란의 여지가 있어 일부 추가 질문을 하겠습니다.

'핵심'이라 둔 조건절을 바꾸면 의미가 있는건가요?

WHERE A.ID = B.ID

WHERE B.ID = A.ID

두 조건이 바뀌면 의미가 부여되어 쿼리에 영향을 주는건지 궁금합니다.

이 글에 대한 댓글이 총 3건 있습니다.

옵티마이저가 그리 바보가 아니라 .. 통계 데이터가 있고 CBO 라면 B테이블을 드라이빙 할꺼라 예상됩니다.

채용근(taiji97)님이 2013-05-21 14:28에 작성한 댓글입니다.

댓글 감사합니다.

그러나 그런 특이한 상황을 제외하고 쿼리대로만 봤을때 그부분이 궁금합니다.

많은요소들이 작동할텐데 그런것들 모두 무시하고 조언 부탁드립니다.

감사합니다.

백호(cypress)님이 2013-05-21 14:29에 작성한 댓글입니다.

 

의미 없습니다.

전혀 영향을 주지 않습니다.

m님이 2013-05-22 16:42에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
40142마농님 한번만 더 부탁드려요 [2]
조기영
2013-05-23
6440
40141원인을 잘못찾겠습니다..조언부탁드립니다. [1]
새하정
2013-05-22
7049
40139PARTITION BY 로 기준이 같을때 [1]
김우
2013-05-21
6999
40138조건에 따른 조인시 질문입니다. [3]
백호
2013-05-21
6658
40137조언 부탁드려요~ [3]
조기영
2013-05-20
6582
40136ORA-12592 오류 [1]
강병구
2013-05-20
12347
40134상하위 3%제외한 평균값 [2]
조형래
2013-05-20
6817
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다