Question

J'ai récemment expérimenté la recherche en texte intégral et je suis curieux de connaître la signification de la valeur Score. Par exemple, j'ai la requête suivante:

SELECT table. * ,
MATCH (
col1, col2, col3
)
AGAINST (
'+(Term1) +(Term1)'
) AS Score
FROM table
WHERE MATCH (
col1, col2, col3
) 
AGAINST (
'+(Term1) +(Term1)'
)

Dans les résultats de Score j'ai vu les résultats, pour une requête, entre 0.4667041301727 et 11.166275978088. Je comprends que c’est l’idée de pertinence de MySQL (plus le poids est élevé).

Ce que je ne comprends pas, c'est comment MySQL obtient ce score. Pourquoi le nombre n'est-il pas retourné sous forme décimale ou autre chose?

Comment faire si je lance une requête " EN MODE BOOLEAN " le score renvoie-t-il toujours un 1 ou un 0? Tous les résultats ne seraient-ils pas un 1?

Dans l’espoir d’une illumination. Merci.

Était-ce utile?

La solution

Généralement, la pertinence dépend du nombre de correspondances entre chaque ligne et les mots donnés à la recherche. La valeur exacte dépendra de beaucoup de choses, mais elle n’a vraiment d’importance que de comparer d’autres valeurs de pertinence dans la même requête.

Si vous voulez vraiment comprendre le calcul, vous pouvez le trouver à l'adresse manuel interne .

Autres conseils

Prenez la requête " mot1 mot2 " à titre d'exemple.

Le mode BOOLEAN indique que l'intégralité de votre requête correspond au document (il contient par exemple mot1 ET mot2). Le mode booléen est une correspondance stricte.

La formule normalement utilisée est basée sur le modèle d'espace vectoriel de recherche. Très simplifié, il propose deux mesures pour déterminer l’importance d’un mot dans une requête. La fréquence des termes (les termes qui apparaissent souvent dans un document sont plus importants que les autres termes) et la fréquence inverse des documents (un terme qui apparaît dans de nombreux documents a un poids inférieur à celui qui figure dans quelques documents). Ceci est connu sous le nom de tf-idf et sert de base à l'espace vectoriel. modèle. Ces scores forment la base du Modèle d'espace vectoriel , qu'un autre peut expliquer en détail. :)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top