2017-10-13 2 views
0

J'essaie d'utiliser Sphinx pour trouver des lignes ayant words dans leur colonne title.Trouver uniquement les mots-clés avec SphinxQL

La requête ressemble à ceci:

SELECT * FROM my_table WHERE MATCH ('@title "words"')

Mais il retourne aussi des lignes ayant word (sans s) au lieu de words dans le titre.

Qu'est-ce que je fais mal?

Répondre

1

Semble que vous avez morphology (spécifiquement stemming?) Activé sur l'index.

devrait envisager de permettre index_exact_words http://sphinxsearch.com/docs/current.html#conf-index-exact-words

qui vous donne opérateur forme exacte.

MATCH('@title =words') 

vous donne également la possibilité de l'option expand_keywords intéressante :) http://sphinxsearch.com/docs/current.html#conf-expand-keywords

... ou si jamaisDo not veulent ces matches, pourrait désactiver :) Hélas résultant il n'y a pas ' le mode "facultatif" (par exemple un ~ opérateur flou pour taper spécifiquement)

+0

Vous avez raison, merci beaucoup! –