Maison > Article > base de données > Comment puis-je améliorer la pertinence de mes résultats de recherche Fulltext MySQL ?
Amélioration de la pertinence des résultats de recherche en texte intégral MYSQL
Dans MYSQL, effectuer des recherches en texte intégral à l'aide des offres MATCH(...) AGAINST(...) une approche plus robuste pour trouver des résultats pertinents par rapport à l’utilisation des opérateurs LIKE. Contrairement à LIKE, qui vérifie simplement les séquences de caractères, la recherche en texte intégral utilise un index sous-jacent et une analyse linguistique pour identifier les correspondances en fonction de leur pertinence.
Utilisation de MATCH(...) AGAINST(...) :
Remplacez votre requête existante par une requête de recherche en texte intégral comme suit :
$query = "SELECT * FROM `vocabulary` WHERE MATCH(translation) AGAINST('word')";
Scores correspondants :
Le MATCH(... ) L'expression AGAINST(...) renvoie un score correspondant pour chaque ligne du tableau. Un score plus élevé indique une correspondance plus pertinente. Par défaut, MYSQL trie les résultats selon ce score par ordre décroissant (le plus pertinent en premier).
Exemple de sortie :
En utilisant la requête modifiée ci-dessus, vous devriez maintenant voir le résultats triés par pertinence :
1 | word <- exact match 2 | crossword <- partial matches sorted by matching score 3 | words 4 | wordsmith
En utilisant la recherche en texte intégral avec MATCH(...) AGAINST(...), vous pouvez efficacement prioriser l'affichage des correspondances exactes et classer les correspondances partielles en fonction de leur pertinence.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!