간단명료

결합인덱스 컬럼 순서 결정 Where 절 조건에 많이 사용되는 컬럼 Equal('=')로 사용되는 컬럼 분포도가 좋은 컬럼 자주 이용되는 Sort의 순서로 결정 결합인덱스 사용 방법 결합인덱스의 첫 번재 컬럼이 where절에서 제외되어 있는 경우, 결합인덱스를 사용할 수 없음. 인덱스 스킵 스캐닝(Index Skip Scanning) 결합인덱스의 첫 번째 컬럼이 WHERE절에서 제외되어 있고, 두 번째 컬럼부터 WHERE절에 조건으로 기술되어 있는 경우에도, 그 인덱스가 사용되는 경우. 결합인덱스 컬럼에 대한 '='의 의미 범위 제한 조건 결합 인덱스의 선행하는 컬럼(첫 번째 컬럼 포함) 순서로 WHERE절에 '='로 연속된 경우. 해당 하는 조건. 체크 조건 WHERE 절 조건에서 선행컬럼이 '=' 조..

데이터베이스에 저장된 자료를 더욱 빠르게 조회하기 위해 사용. 일반적으로, 인덱스는 테이블의 전체 데이터 중에서 10~15% 이하의 데이터를 처리하는 경우에 효율적이며, 그 이상의 데이터를 처리할 땐 인덱스를 사용하지 않는 것이 더 나음. B* TREE 구조 (Balanced Tree) Root(기준)/Branch(중간)/Leaf(말단) Node로 구성 됨 Branch 노드는 Leaf 노드에 연결되어 있으며, 조회하려는 값이 있는 Leaf 노드까지 도달하기 위해 비교/분기해야 될 값이 저장 됨 Leaf 노드 = 인덱스 컬럼 값 + ROWID -- ROWID : 테이블에 있는 row를 찾기 위해 사용되는 저장위치(논리적인) 정보 -- Sorting 되어 저장 AAAE6TAAEAAA5K2AAA 1 2 3 4..

사용자가 실행한 SQL을 해석하고, 데이터를 추출하기 위한 실행계획을 수립하는 프로세스. RBO(Rule Based Optimaizer) 15개의 순위가 매겨진 규칙 존재하며, 부여되는 순위에 따라 수행 됨. 오라클의 초창기 버전부터 제공 됨. 1. Rowid에 의한 1 row 2. 클러스터 조인에 의한 1 row 3. Unique나 Primary Key를 사용한 해시 클러스터 키에 의한 1 row 4. Unique나 Primary Key에 의한 1 row 5. 클러스터 조인 6. 해시 클러스터 키 7. 클러스터 키 8. 결합 칼럼 인덱스 9. 단일 컬럼 인덱스 10. 인덱스에 의한 유한 영역 검색 11. 인덱스에 의한 무한 영역 검색 12. 소트 머지 조인 13. 인덱스로 구성된 칼럼의 최대 또는 최소..

실행계획 확인 방법 1. EXPLAIN PLAN SQL에 대한 실행계획만 확인할 수 있음. 명령을 사용할 때 데이터를 처리하지 않음. END유저에게 끼치는 영향이 없음. 소요시간 측정 불가. 데이터 처리과정있을 경우 I/O처리과정 읽지 않음. SORTING 과정을 볼 수 없음. EXPLAIN PLAN SET STATEMENT_ID = 'TEST1' INTO PLAN_TABLE FOR SELECT .........FOR 다음에 나오는 SELECT 문에 대한 실행계획이 'TEST1'에 저장 됨. SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY ('PLAN_TABLE','TEST1','ALL'));위 쿼리문을 통해 조..

출처 : EZ Learning - [업무에 바로 쓰는 SQL튜닝 입문] 강의