2013-03-25 3 views
0

일부 텍스트와 함께 전체 텍스트 필드가 있습니다. 전체 텍스트를 검색 할 때 전체 텍스트를 검색하는 방법 (전체 필드를 반환하지 않음)

는 그럼 난 사용하여 키워드를 검색 : 키워드가 fulltext_field에 어디 TABLENAME.FULLTEXT_FIELD REGEXP '[[:<:]]keyword'

이것은 레코드를 반환합니다.

내가 얻으려고하는 것은 Google 검색과 같이 내 키워드를 둘러싸고있는 텍스트를 반환하는 것입니다 (홈페이지에서 Google은 키워드를 알 수 있도록 문장을 제공합니다).

이 작업을 수행 할 수 있습니까?

DB 수준에서 해결하는 것이 더 좋을 것입니다.하지만 SQL에서 수행하기가 어렵다면 누군가가 PHP에서 동일한 작업을 수행하는 데 도움이 될 수 있습니다. 즉 전체 텍스트를 가져 와서 내 웹 페이지의 PHP 문장 만 추출하면됩니다.

감사합니다.

+0

보통 대담한 문자 (굵게 글자)가 수행됩니다. MySQL은 가장 관련성이 높은 레코드를 반환하고 PHP를 사용하여 반환 된 레코드에 키워드를 사용합니다. – SparKot

+0

나는 그 문장에서 한 문장 만 자르고 싶다. 나는 웹에서 읽고 있는데, 하나의 제안은 PHP를 사용하여 텍스트를 폭발 (.) 한 다음 문장 검색을 통해 문장을 작성하는 것이다. – Honesta

답변

0

항상 텍스트가 포함 된 레코드를 반환 할 수 있습니다.

그런 다음 strpos을 사용하여 텍스트 시작 위치를 결정하십시오. 그 다음에 x 문자만큼의 문자를 붙여 넣습니다.

관련 문제