본문 바로가기

index2

INDEX 와 SQL 성능 UPDATE 시 어디에 INDEX 있고 없는 것이 성능에 좋을까? SET절에 INDEX O SET절에 INDEX X WHERE절에 INDEX O BEST WHERE 절에 INDEX X WORST NON-CLUSTERED INDEX (NC) => LEAF LEVEL 은 NC에만 있음 => INDEX "INCLUDE" 는 LEAF LEVEL에만 존재함 각 데이터를 인덱스 해놓음 ( 몇 페이지의 몇번째 ) (SEEK) 데이터를 찾을 때 이 인덱싱 트리에서 몇 페이지에 있는지 LEAF LEVEL 까지 찾고 (예: I/O 4) (LOOK UP) 그 페이지 찾아가 실 데이터를 찾는다. (I/O 1) (SCAN) 트리가 아니라 한 레벨 다 훑는것 2% 미만 데이터 검색할 때만 만든다. 2% 넘어가면 쿼리 돌릴때 알아.. 2022. 11. 15.
[SQLP] 4장. 인덱스와 조인 - 인덱스 튜닝 1. 인덱스 튜닝 기초가. 범위 스캔이 불가능하거나 인덱스 사용이 아예 불가능한 경우아래와 같이 인덱스 선두 칼럼을 조건절에서 가공하면 정상적으로 인덱스를 사용할 수 없다.select * from 업체 where substr(업체명, 1, 2) = ‘대한’나. 인덱스 칼럼의 가공인덱스 칼럼을 가공하면 정상적인 Index Range Scan이 불가능해진다.SELECT * FROM 업체 WHERE SUBSTR(업체명,1,2) = '대한' 위와 같은 SQL은 아래처럼 바꿔야 인덱스를 탈 수 있다.SELECT * FROM 업체 WHERE 업체명 LIKE '대한%' 다. 묵시적 형변환인덱스 칼럼을 사용자가 명시적으로 가공하지 않더라도 조건절에서 비교되는 두 값의 데이터 타입이 다르면 내부적으로 형변환이 일어난다... 2019. 3. 19.