딥상어동의 딥한 SQL/LV2.중급쿼리2021. 6. 27. 17:00[SQL] Nested Loop Join

SELECT t1.* FROM t1 INNER JOIN t2 on t1.a = t2.a 예를 들어 위와 같은 조인 구문이 있다고 가정하자. "이중 for loop"를 생각하면 Nested Loop Join을 이해하기 쉽다. 예를 들어, t1의 a항목에 1이라는 값이 있다고 가정하자. 그러면, 그 다음 t2의 a항목에 존재하는 모든 값들에 대해 1이 존재하는지 찾으면서 결합을 진행하는 것이다. 흔히, 아는 다음의 이중 루프 알고리즘을 생각하면 된다. for a in t1 : for b in t2 : if a == b : blar blar blar 그래서, 스캔할 테이블의 크기에 속도가 많이 좌우되고, 이에 따라 join key에 어떤 index가 포함되는지가 중요하다고 할 수 있다. index 스캔을 하면..

image