Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1548 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Fulltext renvoient des resultats bizarres...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fulltext renvoient des resultats bizarres...

n°2112617
jmbianca
https://mykonfig.com/
Posté le 21-11-2011 à 14:59:53  profilanswer
 

Bonjour,
 
Je rencontre des difficultés avec la mise en place d'une recherche fulltext.
Soit une table 'dic_city' contenant toutes les villes de france ainsi que leur code postal. Les 2 champs ont un index fulltext.
J'ai également réduit la taille minimale des mots indexé par le fulltext a 2 (y'a des noms de villes en 2 lettres)
ma requête :
 

Code :
  1. SELECT dic_name, dic_zipcode, MATCH(dic_name, dic_zipcode) AGAINST('bast') AS relevancy
  2. FROM dic_city
  3. WHERE MATCH(dic_name, dic_zipcode) AGAINST('bast')
  4. ORDER BY relevancy DESC
  5. LIMIT 10


 
La requête marche bien pour la plupart des recherches. Mais pour certaines non.
Exemple : alors que 'bastia' est bien dans ma table une recherche sur :
'bas' renvoie 10 villes mais pas 'bastia' => normal
'bast' ne renvoie rien
'basti' ne renvoie rien
'bastia' renvoie 'bastia'
 
J'ai essayé avec et sans boolean mode, en reconstruisant l'index, etc...  
Vous avez une idée ?


---------------
Le seul configurateur de PC qui compare les prix ! - Le comparateur de prix du matos photo - Instagram
mood
Publicité
Posté le 21-11-2011 à 14:59:53  profilanswer
 

n°2112623
rufo
Pas me confondre avec Lycos!
Posté le 21-11-2011 à 15:17:58  profilanswer
 

pourquoi tu fais pas un LIKE 'bast%' ? T'aurais pas ce pb ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2112625
jmbianca
https://mykonfig.com/
Posté le 21-11-2011 à 15:24:38  profilanswer
 

Parce qu'un like me permettrait pas de renvoyer des resultats "approchant". Par ex. si je cherche "tain l'hermitage" il me renvoie rien parce que dans la base c'est "tain-l'hermitage". Alors que le fulltext me le renvoie bien lui. Et le like me permet pas non plus de trier par pertinence.


---------------
Le seul configurateur de PC qui compare les prix ! - Le comparateur de prix du matos photo - Instagram
n°2112708
rufo
Pas me confondre avec Lycos!
Posté le 22-11-2011 à 10:12:38  profilanswer
 

Solution 1 :  
tu fais une 1ère requête avec like. Si pas de réponse, une 2ème requête en fulltext...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2112723
jmbianca
https://mykonfig.com/
Posté le 22-11-2011 à 10:47:21  profilanswer
 

J'aimerai mieux faire une seule requete.  
Pour l'instant, j'ai trouvé une solution "intermediaire" ou je retraite mon input pour transformer les "-" e t les "'" en " ", et je fais un like sur les différents "mots".
Ex:  

Code :
  1. SELECT cit_name, cit_zipcode
  2. FROM city c
  3. WHERE 1 = 1 AND (cit_name LIKE '%tain%' OR cit_zipcode LIKE '%tain%')  AND (cit_name LIKE '%l%' OR cit_zipcode LIKE '%l%')  AND (cit_name LIKE '%hermita%' OR cit_zipcode LIKE '%hermita%')  ORDER BY cit_name ASC LIMIT 10


 
En attendant mieux... Car j'aimerais bien comprendre aussi pourquoi le fulltext ne marche pas dans certains cas !


---------------
Le seul configurateur de PC qui compare les prix ! - Le comparateur de prix du matos photo - Instagram

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Fulltext renvoient des resultats bizarres...

 

Sujets relatifs
[PL/SQL] sortir les résultats d'UPDATE dans le SPOOL[RESOLU] [BASH] recherche et mise en forme synthétique de résultats
Supprimer résultats d'un Userform vbaSortir les résultats d'une requête de sa boucle
Cours de C "minimaliste en lignes, riche en résultats"Afficher résultats base mysql -> tableau html horizontal
Symfony : Créer des formulaires en fonction des résultats d'une requet[Possible?] Affiner les résultats dans un site (priceminister) ?
Rassembler résultats de 2 requetes sqlRegroupement de résultats sur une seul ligne
Plus de sujets relatifs à : Fulltext renvoient des resultats bizarres...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR