문자열의 앞부분이 고정되면 인덱스가 시작 범위를 바로 잡지만, 앞이 비어 있으면 어디서 스캔을 시작할지 결정할 수 없습니다.
LIKE '김%'LIKE '%김'LIKE '%김%'LIKE '김_수'중간에 있는 문자열을 찾으려면 정렬 순서보다 토큰화와 역색인이 더 적합합니다.
CREATE INDEX idx_ft ON users(name) INDEXTYPE IS CTXSYS.CONTEXT;
ALTER TABLE users ADD FULLTEXT INDEX ft_name(name);
CREATE INDEX idx_gin ON users
USING gin(to_tsvector('korean', name));