집 >데이터 베이스 >MySQL 튜토리얼 >LIKE 문과 외부 인덱스를 사용하여 InnoDB 테이블에서 부분 전체 텍스트 검색을 어떻게 구현할 수 있습니까?
InnoDB 테이블을 위한 전체 텍스트 유사 검색 최적화
InnoDB 테이블은 탁월한 성능과 안정성을 제공하지만 기본적으로 전체 텍스트 검색 기능이 부족합니다. 그러나 LIKE 문과 외부 인덱스의 조합을 활용하면 부분적인 전체 텍스트 검색 기능을 얻을 수 있습니다.
해결책
다음을 사용하여 전체 텍스트 검색을 모방하려면 마찬가지로, 한 가지 접근 방식은 보조 MyISAM 테이블을 기본 InnoDB 테이블의 인덱싱 계층으로 활용하는 것입니다. "전체 텍스트 검색 테이블"이라고 하는 이 보조 테이블은 InnoDB 테이블에서 원하는 열의 인덱스 복사본을 저장합니다.
단계:
예:
검색 가능하게 만들려는 "주제" 열을 포함하는 InnoDB. 비슷한 스키마를 사용하여 MyISAM 전체 텍스트 검색 테이블 "threads_ft"를 생성합니다. 동기화를 용이하게 하기 위해 트리거 또는 일괄 업데이트를 사용하여 InnoDB "threads" 테이블의 변경 사항을 "threads_ft"에 반영합니다.
검색 저장 프로시저 "ft_search_threads"는 검색 매개변수를 받아들이고 관련 스레드를 반환합니다. 검색 테이블을 InnoDB 테이블과 결합하여 추가 메타데이터를 가져오고 "주제" 열에 대한 LIKE 일치를 기반으로 결과 순위를 매깁니다.
장점:
고려 사항:
위 내용은 LIKE 문과 외부 인덱스를 사용하여 InnoDB 테이블에서 부분 전체 텍스트 검색을 어떻게 구현할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!