Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/01/2012, 10h09   #1
Membre du Club
 
Avatar de PIEPLU
 
Inscription : avril 2003
Messages : 299
Détails du profil
Informations personnelles :
Âge : 30

Informations forums :
Inscription : avril 2003
Messages : 299
Points : 40
Points : 40
Envoyer un message via MSN à PIEPLU Envoyer un message via Skype™ à PIEPLU
Par défaut Optimisation d'un moteur de recherche

Bonjour.

Le but de ce qui va suivre est d'améliorer mon moteur de recherche interne.

Voici actuellement comment il fonctionne.
Table 1 :
idEntreprise en int
nomEntreprise en varchar
tag en varchar

Au moment de la recherche, je décompose la saisie en mot. Exemple "la maison des rêves" devient 4 termes.
Et ensuite, je fais des recherches avec LIKE. Le problème, c'est qu'il y a des termes qui font que ca ne fonctionne pas très bien. Par exemple, les ' ou encore les - ou les ... lorsqu'ils sont collés au mot. Exemple d'entreprise enregistrée dans ma table : "de...a...a...z"

Voici la façon dont je pense améliorer les résultats.
Créer une nouvelle table
Table 3 :
nomEntreprise en FULLTEXT
idEntreprise en INT

Dans nomEntreprise, je pense y insérer tous les ajouts en nettoyant. C'est à dire que je n'ajouterais pas les caractères de ponctuations, les " ou autres ' ...

Ensuite, je n'aurais plus qu'à rechercher dans cette table avec un MATCH AGAINST

Qu'en pensez vous ? D'autres améliorations possibles ?

Merci d'avance pour votre aide !
__________________
Vincent Pieplu
Développeur Site Internet
PIEPLU est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 10h56   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 11 029
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 11 029
Points : 18 331
Points : 18 331
Envoyer un message via MSN à CinePhil
Tu peux aussi lire l'article de SQLPro qui préconise en quelque sorte de se créer son propre index de recherche FULL TEXT.

Les blogs sont plantés actuellement et je ne peux pas poster le lien ici mais il figure sur le site de SQLPro.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h50.


 
 
 
 
Partenaires

Hébergement Web