Optimisation des résultats de recherche en texte intégral MySQL pour la pertinence
Lorsque vous travaillez avec MySQL, le tri des résultats en fonction de la pertinence peut améliorer l'expérience utilisateur et rationaliser la récupération des données. Bien que la requête donnée récupère efficacement les lignes avec des traductions correspondantes, elle n'a pas la spécificité nécessaire pour prioriser les correspondances exactes. Pour résoudre ce problème, envisagez d'utiliser les capacités de recherche en texte intégral de MySQL.
La recherche en texte intégral permet une correspondance plus granulaire et fournit un score de pertinence pour chaque ligne renvoyée. Ce score représente le degré d'alignement d'une ligne avec la requête de recherche, ce qui lui permet de classer les résultats en fonction de leur similarité. Pour tirer parti de la recherche en texte intégral, modifiez la requête comme suit :
$query = "SELECT *, MATCH(translation) AGAINST('word') AS relevance FROM `vocabulary` WHERE MATCH(translation) AGAINST('word') OR translation LIKE '%word%' ORDER BY relevance DESC";
Dans cette requête optimisée :
En incorporant la recherche en texte intégral, vous pouvez désormais afficher les résultats avec des correspondances exactes en haut, garantissant la pertinence et améliorant la satisfaction des utilisateurs.
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!