[SQLP] 드라이빙, 드리븐 테이블

dev_jo·2023년 2월 21일
0

SQL

목록 보기
23/24
post-custom-banner

드라이빙 테이블

드라이빙, 드리븐 테이블이란

데이터베이스에서 데이터를 가져올 때, 테이블 엑세스 순서에 따라 성능 차이가 발생하기도 한다.
여기서 두 테이블간의 조인시에 먼저 엑세스 되는 테이블을 드라이빙 테이블이라고 하고, 나중에 엑세스 되는 테이블을 드리븐 테이블 이라고한다.

드라이빙 테이블로 결정되는 것은 INDEX의 존재 및 우선순위 혹은 FROM 절에서의 TABLE 지정순서에 영향을 받으며 어느 TABLE이 먼저 엑세스 되느냐에 따라 속도의 차이가 크게 날 수 있으므로 매우 중요하다.

  • 테이블 A가 100건 테이블 B가 100만건인 경우
  • A 테이블을 드라이빙 시 -> 100번 탐색
  • B 테이블을 드라이빙 시 -> 100만번 탐색
  • 즉 레코드 수가 적은 테이블을 드라이빙 하는것이 유리하다.

드라이빙 테이블 결정 규칙

JOIN이 되는 컬럼 중 한쪽에만 인덱스가 있는 경우 해당 테이블이 드라이빙 테이블이 된다.

profile
To be a better developer!!

0개의 댓글