index

    mysql index를 타지않는 경우

    인덱스를 타지 않는 경우 1. 인덱스 컬럼의 변형 select * from table where LOWER(name) ='word'; select * from table where idx - 1 = 5; 이 처럼 인덱스에 변형을 가하게 되면, DBMS가 인덱스를 이용하지 않는다. 2. 인덱스 컬럼의 내부적인 데이터 변환 select * from table where age = '30' 문자값 데이터타입을 갖는 컬럼에 ‘값’ → 값 을 하지 말고 정확한 데이터 타입을 넣어야 인덱스를 탈 수 있다. 3. NOT 또는 IN 연산자 사용 NOT일 경우에도 인덱스를 타긴 타지만, 일반적으로, NOT에 사용된 값이 아닌 데이터의 비율이 높은 경우가 많기 때문에 인덱스를 타지 않는 경우가 많다. 마찬가지로 IN일 경..