>데이터 베이스 >MySQL 튜토리얼 >MATCH AGAINST 또는 LIKE: 내 전체 텍스트 검색을 최적화하는 쿼리는 무엇입니까?

MATCH AGAINST 또는 LIKE: 내 전체 텍스트 검색을 최적화하는 쿼리는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-28 10:22:10647검색

MATCH AGAINST or LIKE: Which Query Optimizes My Full-Text Search?

전체 텍스트 검색을 위한 최적의 쿼리 선택

여러 열에 분산된 특정 키워드가 포함된 행에 대해 데이터베이스를 검색할 때 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.