Pertinence des résultats avec MATCH / AGAINST [Mysql] - PHP - Programmation
Marsh Posté le 09-01-2015 à 21:42:56
Pour ceux qui veulent tester : http://eriksma.noip.me/newsma/chroniques
(adaptez la largeur de votre page, c'est une interface pour smartphones...)
Marsh Posté le 10-01-2015 à 22:54:37
Trouvé ! C'était le "SUM" dans ma requête qui faussait tout.
Petite astuce aussi, pour favoriser les mots-clefs trouvés dans les noms de groupes plutôt que les noms d'albums et les labels, j'ai répété trois fois les noms de groupes dans l'index et deux fois le nom d'album. Par exemple :
RISE AND FALL
Our Circle Is Vicious
Deathwish Inc.
Est repris dans ma table searchindex comme : rise and fall rise and fall rise and fall our circle is vicious our circle is vicious deathwish inc.
Dans mon cas, ça a beaucoup amélioré la pertinence des résultats
Marsh Posté le 09-01-2015 à 21:39:44
Bonjour,
Je suis en train de bosser sur un moteur de recherche performant pour mon site.
Pour faire simple, ce sont des chroniques de disques. J'aimerais que le moteur permette de taper à la volée le nom d'un groupe et / ou d'un album et que les résultats soient classés par pertinence. Hélas après moultes recherches je ne suis pas satisfait du résutat...
Dans ma table "reviews", j'ai créé un champs "searchindex" dans lequel figurent les mots-clefs dans lesquels rechercher. C'est-à-dire le nom du groupe, de l'album et du label. J'ai créé sur ce champs un index FULLTEXT, comme conseillé un peu partout.
La requête qui va chercher tout ça, la voici :
Bon y a beaucoup mais faut évidemment faire attention aux MATCH / AGAINST. De ce côté là c'est correct non ?
Parce que les résultats le sont moins. Par exemple, si je fais une recherche sur Poison The Well, le résultat qui arrive en tête (j'indique le contenu du champs searchindex) :
bullet for my valentine the poison trustkill
SCORE 11.11
poison heart one poison drives out another we are
SCORE 8.44
poison the well i/iii ii/iii iii/iii ferret music
SCORE 5.80
poison the well versions ferret music
SCORE 5.73
Je ne comprends pas comment le premier a un tel score, alors que le premier résultat vraiment pertinent n'arrive qu'en troisième avec un score de moitié moindre...
C'était vraiment une bonne idée l'index en FULL TEXT vu que cela exclut certains mots trop courants dans les termes de recherche ? Dans ce cas-ci je suppose que le THE en fait partie...
Merci de m'éclairer à ce sujet !
---------------
SHOOT ME AGAIN WEBZINE