2014-12-19 3 views
2

Я хочу знать, могу ли я получить, например, процент точности в моем результате запроса; например, что-то вроде этого:Могу ли я узнать точность результата полнотекстового поиска MySQL?

запрос:

"I love stackoverflow" 

Результаты: (результат, точность)

"we love stackoverflow", 80% 
"I hate stackoverflow" , 70% 
"They hate stackoverflow", 40% 

Если нет ничего подобного в MySQL полнотекстового поиска, вы можете порекомендовать мне библиотека текстового поиска, которую можно легко развернуть в существующем проекте в базе данных MYSQL и PHP?

+1

http://dev.mysql.com/doc/refman/5.0/en/fulltext-natural-language.html искать «релевантность» –

+0

так что вопрос аналогичный -> http://stackoverflow.com/questions/25646260/display-precision-of-mysql-select-queries –

+0

'Я ненавижу stackoverflow' на 70% точно близко к' I love stackoverflow'? Просто шучу :) –

ответ

1

FULLTEXT имеет это.

Значение

MATCH (col1,col2) AGAINST ('matching terms') 

(при использовании в SELECT, ORDER BY или заявления) производит оценку релевантности. Это не процентный балл, но это показатель, показывающий, насколько близок к условиям.

Например,

select zip, 
     primary_city, 
     match(primary_city, acceptable_cities) against ('york') AS relevance 
    from zip 
    where match(primary_city, acceptable_cities) against ('york') 
order by 3 desc 

производит актуальность матча к столу почтового индекса.

+0

Именно то, что я искал, я пропустил это из документов. –

Смежные вопросы