begin process at 2012 05 26 20:49:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

MySQL

 > 

Requêtes

 > 

Rechercher une chaine similaire : Soundex, similar_text, Metaphone ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Rechercher une chaine similaire : Soundex, similar_text, Metaphone ?

vendredi 28 septembre 2007 à 13:25:06 | Rechercher une chaine similaire : Soundex, similar_text, Metaphone ?

audrey698

Bonjour,

Je cherche à réaliser un petit moteur de recherche qui me permette de trouver des "titres" similaires à celui entré par l'utilisateur. C'est la première fois que j'ai à réaliser une requête portant sur une recherche et je suis un peu perdue.

J'ai une table très basique :
title | content
Joe le taxi | ...
Grève des taxis | ...
Bisounours party 3 | ...
Paris : la colère des taxis gronde sur le périiph | ...


Dans un premier temps je ne fais de recherche que sur le champs title (autant commencer par quelque chose de "simple" puis avancer pas à pas).J'envisage ensuite de faire porter la recherche à la fois sur le title et sur le content (qui est un texte d'une 20aine de lignes environ).

Dans l'exemple présent j'aimerais que ma requête me trouve les titres les plus pertinents pour "grève des taxis à Paris".

Je me demandais quelle était la meilleure méthode pour classer les résultats et comment la mettre en place dans ma requête ?

Je vous remercie pour toute aide que vous pourrez m'apportez :-). Je vous en serais très reconnaissante :).
samedi 31 janvier 2009 à 16:32:36 | Re : Rechercher une chaine similaire : Soundex, similar_text, Metaphone ?

Anto1982

Bonjour Audrey, J'ai eu un problème similaire et je me suis posé la question plein de fois. Également débutant j'ai opté pour la solution suivante: Je transforme ma variable de recherche avant d'effectuer ma requête de la façon suivante (je travaille sur un projet en anglais) - Je remplace les mots finissant par -mot-+"ies" par -mot-+"*", les mots finissant par -mot-+"s" par -mot-+"*" et je fait une recherche full-text. J'obtiens ainsi toutes les variantes (pluriel et singulier). La recherche full-text me donne tous les résultats (+ le tri par pertinence en utilisant la fonction MATCH dans mysql). Tu peux également utiliser "WITH EXPANSION QUERY" dans ta requête... Pour le SOUNDEX, c'est bien mais attention, je crois que cette fonction est basée sur des consonances anglaises (à confirmer!). De mon coté ça fonctionne pas mal... Mais moi, ce que je souhaité au début (ce qui est probablement ton cas) c'est qu'après avoir effectué la recherche et avoir montré les résultats, le moteur me propose une liste de mots "proches" de ma requête pareil que Google... La, je peux pas t'aider... si tu trouves une meilleure soluce, n'hésite pas à la partager :-) A+ Anto


Cette discussion est classée dans : recherche, title, requête, rechercher, taxis


Répondre à ce message

Sujets en rapport avec ce message

Recherche dans toute la base de données [ par RugbyOne ] Bonjour, Est-il possible de faire une recherche dans toute la base de données à l'aide d'une requête ? Je m'explique : j'ai une base SQL Server 2000 Optimisation requête [ par cdsarkis ] Bonjour,je dois lancer la requête qui suit sur une table de plus de 200 millions de lignes (environnement SQL Serveur 2000). Est-elle bien optimisée ? Recherche globale d'une chaine dans un schéma [ par mr_foxy ] Bonjour, Je cherche une requête permettant de parcourir toutes les tables d'un schéma à la recherche d'une chaine de caractère.En fait, je voudrais en recherche par mot clé [ par kerfahi ] bonjour, je veux faire une requête SQL qui permet de trouver une liste de document en tapant dans la barre de recherche les mots clé(chaque document a Créer un "ROWNUMBER" dans une requête utilisant un aggrégat [ par tri_yann ] Bonjour, Je travaille sur une table qui comprend des enregistrements à regrouper avec une rupture sur certains enregistrements. La rupture est la val [Requête SQL] dépendance entre deux tables [ par b3nsouss ] Bonjour, J'ai deux tables "Table1" et "Table2" respectivement remplis avec "T11, T12, T13" et "T21, T22, T23" et une application en VB où il y a deux erreur d'exécution de la requête: INSERT INTO [ par natier ] Bonjour, Je suis en train de développer une application web et j'ai un problème d'exécution de requête. Dans mon formulaire j'ai une zone de liste "OR" trop lent [ par ALLODREN ] Je ne pas trouvé sur le net comment pallier ce problème lié à mysql : Comment remplacer le OR qui fait trop ralentir ma requête ? select X From Mat A la recherche du CD de l'ouvrage de SQL Server 7 de Stephen Wynkoop [ par haitek ] Bonjour,Je cherche le contenu du CD de programme (ou les exemples du livre du livre) qui accompagnait l'ouvrage ci-après :Titre : Microsoft SQL Server requête sql [ par jodanielprince ] Select Code_Materiel, Count (Code_Materiel) AS NOMBRE INTO TEMP_MVT From Mouvement Group by C


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,856 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales