2012-10-29 3 views
0
SELECT firstname, lastname,comments 
FROMusers 
WHERE MATCH(firstname,lastname,comments) 
AGAINST('$searchterm') 

내가 검색 엔진 쿼리와 위를했지만, MySQL의 전체 텍스트 인덱싱 만 MYISAM 지원하고 있다고, 내가 사용하고 엔진 이노 디비가, 나 최고에게 알려주십시오 InnoDB 엔진에서 검색하는 coloumn INDEX 방법.검색 엔진으로 PHP, 이노 엔진 MySQL의

내 지식을 바탕으로
+1

InnoDB가 사용자의 필요를 충족시키지 않는 이유는 무엇입니까? – lqs

+0

forogn 키 제약 때문에 InnoDB를 사용했습니다. – Preetham

답변

1

, MySQL은 FTS는 현재 MySQL의 Fulltex 검색 문서 기본적으로 http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html

살펴 보셔야 5.6 (http://dev.mysql.com/tech-resources/articles/whats-new-in-mysql-5.6.html)

버전 이후 이노 사용할 수있다, 나는 이해한다 생각 '인덱스'이며 MySQL이 인덱싱을 수행하는 방식입니다. 나는 또한 당신이 읽은 추천

  1. Boolean mode
  2. Natural language mode
  3. :이 문서에서는 전체 텍스트 검색에서 몇 가지 중요한 개념이 있습니다 http://dev.mysql.com/doc/internals/en/full-text-search.html

    MySQL의 전체 텍스트 검색 뒤에 메커니즘을 이해하는 도움에 매우 유용합니다 MySQL FTS에서 stopwords list.

  4. 시스템 변수 likes ft_min_word_len도 중요합니다.

이 내용을 이해 한 후에는 MySQL 전체 텍스트 검색을 올바르게 적용하는 방법을 알 것입니다.

+0

감사합니다! – Preetham