-
SQLite 14. INDEXSQL/Sqlite 2022. 1. 1. 22:15반응형
인덱스란?
데이터베이스의 성능, 효율을 높이기 위해,
자주 검색이 발생하는 컬럼이 있다면,
그 컬럼과 ROWID만 다른 테이블로 뽑아낸 뒤,
(쉽게 찾을 수 있도록) 컬럼값 기준으로 정렬하여 저장한다.('컬럼들'이라면 같은 방법으로 컬럼들을 처리하면 된다.)
검색은 정렬된 새 테이블에서 이루어지며,
검색하여 ROWID를 찾은 뒤,
원 테이블의 ROWID와 비교해서
원 데이터를 출력하면
효율적인 검색이 이뤄질 수 있다.이런 구구절절한 과정을 DBMS가 해주는 데
이 기능을 인덱스라고 한다.SQLite는 B-tree 방식의 정렬을 이용한다고 알려져 있다.
인덱스 생성하기
이렇게 인덱스 걸어줄 테이블과 컬럼을 정하면 인덱스를 사용할 수 있다.
CREATE INDEX "name_index" ON "players" ( "name" ASC )
데이터베이스 구조에서 확인.
반응형