일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- AWS
- 인덱스튜닝
- 데이터분석
- 코딩
- storage_integration
- 자료구조
- Oracle
- 조인
- 쿼리
- 결합인덱스조건
- MySQL
- 율코딩
- 백준
- Join
- 알고리즘
- S3
- 백트래킹
- 오라클
- 개발
- dfs
- HackerRank
- 인덱스
- 결합인덱스란
- 데이터베이스
- sql
- Index
- 문제풀이
- dbeaber
- snowflake
- DB
- Today
- Total
목록조인 (2)
율코딩
소트 머지 조인 (Sort Merge Join) 소트머지 조인은 두 테이블을 각각 조건에 맞게 먼저 읽는다. 그리고 읽은 두 테이블을 조인 컬럼을 기준으로 정렬해놓고, 조인을 수행한다. 주로 조인 조건 칼럼에 인덱스가 없거나, 출력해야 할 결과 값이 많을 때 사용된다. NL 조인을 효과적으로 수행하려면 조인 컬럼에 인덱스가 필요한데 만약 적절한 인덱스가 없다면 Inner 테이블을 탐색할 때마다 반복적으로 Full Scan을 수행하므로 매우 비효율적이므로 그럴 때 옵티마이저는 소트 머지 조인이나 해시 조인을 고려한다. 오라클에서는 정렬을 하게 되면 PGA라는 공간에서 정렬을 수행하게 되는데, PGA 공간은 프로세스에 할당 된 독립된 공간이기 때문에 버퍼 캐시(SGA영역)를 사용하는 NL 조인에 비해 조인을..
NL 조인 ( Nested Loops 조인) NL 조인은 두 테이블이 조인을 할 때, 드라이빙 테이블( Outer 테이블)에서 결합 조건에 일치하는 레코드를 내부 테이블(Inner Table)에서 조인하는 방식이다. Outer Join 에서 만족하는 레코드가 적을수록 NL 조인에서 효율이 좋다. 조인 조건에 해당하는 컬럼들은 인덱스를 가지고 있어야 한다. NL 조인의 예시를 보자. 아래와 같은 SQL문이 있다고 하자. SELECT /*+ USE_NL (B) */ A.* , B.* FROM ITEM A ,UITEM B WHERE A.ITEM_ID=B.ITEM_ID --- 1 AND A.ITEM_TYPE_CD = '100100' --- 2 AND A.SALE_YN = 'Y' --- 3 AND B.SALE_Y..