집 >데이터 베이스 >MySQL 튜토리얼 >MATCH AGAINST 또는 LIKE: 내 전체 텍스트 검색을 최적화하는 쿼리는 무엇입니까?
여러 열에 분산된 특정 키워드가 포함된 행에 대해 데이터베이스를 검색할 때 MATCH AGAINST 및 LIKE라는 두 가지 기본 옵션이 나타납니다. . 각 접근 방식에는 아래에 설명된 대로 장단점이 있습니다.
MATCH AGAINST
해당 열에서 전체 텍스트 인덱스를 활용하는 MATCH AGAINST는 다음을 사용하는 테이블에서 뛰어난 성능을 자랑합니다. MyISAM 스토리지 엔진. 이를 통해 지정된 열 전체에서 여러 키워드에 대해 효율적으로 일치시킬 수 있습니다.
LIKE
MATCH AGAINST보다 더 다양하지만 LIKE 검색은 연결 및 검색을 통해 각 행을 개별적으로 평가해야 합니다. 비교. 이 접근 방식은 특히 대규모 테이블의 경우 상당한 성능 저하를 초래합니다. 또한 LIKE는 MATCH AGAINST의 경우 "xxfoo"가 일치하지 않는 등 부분적인 키워드 일치로 인해 어려움을 겪을 수 있습니다.
선호 선택
MyISAM 테이블의 경우 , MATCH AGAINST는 여러 키워드가 포함된 전체 텍스트 검색에 선호되는 선택입니다
InnoDB 테이블의 경우 MySQL 5.6 이상에서는 Match Against에 대한 지원을 제공하므로 실행 가능한 옵션이 됩니다.
타사 검색 사용을 고려하세요. 엔진
성능이 중요한 요소이고 기본 데이터베이스 시스템이 만족스러운 솔루션을 제공하지 못하는 경우 다음을 고려하십시오. 전체 텍스트 색인화 및 검색을 위해 특별히 설계된 타사 검색 엔진을 통합합니다.
위 내용은 MATCH AGAINST 또는 LIKE: 내 전체 텍스트 검색을 최적화하는 쿼리는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!