php - mysql 퍼지 검색 문제
为情所困
为情所困 2017-05-27 17:38:56
0
6
776

다음 키워드 매칭 방법을 알려주세요

예를 들어 데이터베이스 저장 문자는 다음과 같습니다: sfsdf4-1bbsdfsd;

사용자가 41bb, 4 1bb를 입력하면 이 문자열도 일치할 수 있습니다

어떻게 하나요?

감사합니다

为情所困
为情所困

모든 응답(6)
世界只因有你

당신에게 필요한 것은 mysql 퍼지 검색이 아닙니다.
검색 엔진 지원이 필요합니다.

洪涛

sfsdf41bbsdfsd와 같이 무시해야 하는 특수 문자를 제거한 후 문자열을 저장할 새 필드를 만듭니다. 쿼리할 때 키워드에 대해 동일한 작업을 수행하고 새 필드를 사용하여 일치시킵니다.

左手右手慢动作

MySQL은
SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

와 같은 정규식 검색을 지원합니다.
刘奇

먼저 사용자가 제출한 데이터를 처리하고, 사용자가 제출한 데이터를 공백 구분선으로 나누어 배열을 만든 다음, 이 배열의 데이터를 사용하여 퍼지 쿼리를 수행한 다음 동일한 데이터를 검색해야 한다고 생각합니다. . . 하지만 이런 식으로 많은 사용자가 쿼리하면 시스템 속도가 매우 느리게 느려질 수 있으므로 이 디자인 패턴을 사용하지 않는 것이 좋습니다

我想大声告诉你

제목 질문은 단어 분할 검색으로 설정되어 있습니다. 직접 퍼지 검색은 결과를 일치시킬 수 없습니다. 정규식 검색을 사용하는 것은 너무 비효율적이며, 직접 개발하고 구현하는 경우에는 권장되지 않습니다.
검색 엔진을 사용하는 것이 좋습니다. Sphinx는 사용하기 매우 쉽고 mysql을 매우 잘 지원합니다.
질문의 주제에는 php 개발을 자주 사용하는 경우 Xunsearch도 있습니다. 좋아요, http://www.xunsearch .com/ 중국어로 개발되었으며 문서가 모두 중국어로 되어 있어 사용하기 매우 편리합니다.

我想大声告诉你

검색 엔진을 사용하세요. 이것이 전문적으로 하는 일입니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿