[sql] 부분 인덱스 구성
예를들어, 우리가 ‘고객’ 테이블이 있고, ‘이름’과 ‘나이’ 열에 대한 인덱스를 생성하려고 한다면, 부분 인덱스를 활용하여 ‘이름’만을 대상으로 한 인덱스를 생성할 수 있습니다. 이렇게 하면 불필요한 인덱스를 만들지 않아도 되므로 스토리지 공간을 절약할 수 있습니다.
부분 인덱스를 만들기 위해서는 CREATE INDEX 문을 사용하고, WHERE 절을 사용하여 특정 조건을 지정합니다.
예제:
CREATE INDEX idx_name ON customer (name) WHERE age > 18;
위의 예제에서, ‘고객’ 테이블에서 ‘나이’가 18세보다 많은 고객의 ‘이름’ 열에 대한 부분 인덱스를 생성하는 것을 보여줍니다.
참고 문헌:
- https://dev.mysql.com/doc/refman/8.0/en/partial-indexes.html
- PostgreSQL Documentation: https://www.postgresql.org/docs/current/indexes-partial.html