[mysql] Comment rendre LIKE pertinent ?

verone
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 42
Inscription: 30 Jan 2006

[mysql] Comment rendre LIKE pertinent ?

Message le Ven Déc 08, 2006 11:11

Bonjour à tous !

J'aimerais savoir s'il y a une possibilité de faire de recherche dans une table avec des résultats plus pertinents qu'avec la fonction LIKE ?


HawkEye
WRInaute accro
WRInaute accro
 
Messages: 17005
Inscription: 23 Fév 2004

Message le Ven Déc 08, 2006 11:18



ecocentric
WRInaute accro
WRInaute accro
 
Messages: 3602
Inscription: 10 Fév 2004

Message le Ven Déc 08, 2006 11:19

LIKE + une surcouche qui filtre le résultat de la base de données et donne un score à chaque résultat. Tri sur base du score. LIKE donnant trop de résultat, ça permet de filtrer et de reclasser. Globalement, ça peut donner de meilleurs résultats qu'avec un index FULLTEXT, si la fonction de filtrage est bien faite. Côté performances, ça tient bien sur des tables avec des champs de taille limitée et qq dizaines de milliers de tuples.

EDIT - FULLTEXT est évidemment plus simple et plus immédiat à mettre en place, pour une pertinence correcte (sans plus).


rog
WRInaute passionné
WRInaute passionné
 
Messages: 1662
Inscription: 21 Sep 2006

Message le Ven Déc 08, 2006 11:28

lol

je me demande bien en quoi LIKE ne serait pas pertinent ?

rog


ecocentric
WRInaute accro
WRInaute accro
 
Messages: 3602
Inscription: 10 Fév 2004

Message le Ven Déc 08, 2006 11:31

rog a écrit:je me demande bien en quoi LIKE ne serait pas pertinent ?


- pas de classement selon un score (FULLTEXT a un indice de pertinence, par exemple, qui permet de classer selon, grosso modo, la fréquence d'apparition des mots-clefs de la recherche).
- recherche trop large (exemple : 'art' va te donner 'artiste' (OK), 'article' (pas OK), 'particulier' (pas OK), etc), ce qui devient vite gênant pour du texte (trop de résultats).


rog
WRInaute passionné
WRInaute passionné
 
Messages: 1662
Inscription: 21 Sep 2006

Message le Ven Déc 08, 2006 11:51

je te remercie pour l'explication

c'est une solution simple et pertinente

rog


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

  • Google Browser TouchGraph
    Description du TouchGraph Google Browser (outil externe) : il s'agit d'un outil graphique permettant de visualiser des sites similaires (selon Google). On peut sauter de site en site, et se rendre compte facilement des communautés de sites, ou des nébuleuses de sites traitant du même sujet.


Qui est en ligne

Utilisateurs parcourant ce forum: franckM, salva et 0 invités