일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- HWPF
- 홈스쿨링
- spring
- 함수
- 요약
- SQLSTATE=42705
- renameTo
- ERROR_MESSAGE
- 배치
- transferTo
- 요청매핑
- 교육법
- TRANCOUNT
- git
- MSSQL
- 자바
- dm_exec_requests
- 재귀멤버
- SQL
- 프론트컨트롤러
- XACT_STATE
- 디스패처서블릿
- 스프링
- 앵커멤버
- 진경혜
- 튜닝
- XWPF
- java
- 아이
- getChannel()
- Today
- Total
목록튜닝 (2)
필기노트
1. MAX 함수를 사용하여 체번을 하는 프로그램에서 종종 보게 되는 오류들 (1) MAX(seq) +1 대신 MAX(NVL(seq, 0)) + 1을 사용하는 경우 인덱스를 사용할 수 있도록 MAX와 NVL의 위치를 바꾸어 NVL(MAX(seq), 0) + 1로 작성해야 한다. (2) MAX(seq) + 1 대신 MAX(TO_NUMBER(seq)) + 1을 사용하는 경우 위 경우와 마찬가지로 생성한 인덱스를 활용할 수 없는 SQL이다. 이 경우 seq 컬럼을 NUMBER 데이터 타입으로 변경하고 TO_NUMBER 함수를 제거하는 방안을 고려해야 한다. (3) 인덱스를 seq 컬럼으로만 생성한 경우 WHERE절의 col_1 = '1' 부분을 삭제하거나, 인덱스를 col_1 + seq로 변경해야 한다. (4..
1. NESTED LOOP JOIN 드라이빙 테이블로 선정된 테이블부터 WHERE절에 정의된 검색 조건을 만족하는 데이터들을 걸러낸 후, 이 값들을 가지고 조인 대상 테이블을 반복적으로 검색하면서 조인 조건을 만족하는 최종 결과값을 얻어 내는 방식을 말한다. NESTED LOOP JOIN 방식으로 조인을 할 경우, 드라이빙 테이블의 조건을 만족하는 결과 데이터가 많다면 그만큼 반복해서 INNER TABLE에 접근해야 하므로 성능은 자연히 나빠질 것이다. 따라서 NESTED LOOP JOIN 방식을 채택할 때는 드라이빙 테이블의 선택이 매우 중요하며, 조인 순서에 대해서도 고려하는 것이 좋다. 또한 INNER TABLE의 조인 조건으로 사용될 컬럼에 인덱스가 존재하는지 여부도 성능을 좌우하는 중요한 요소이..