Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
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 08/12/2010, 15h03   #1
Invité régulier
 
Inscription : mai 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 37
Points : 5
Points : 5
Par défaut Fulltext & Contains pas fiable ?

Bonjour,

Je croyais avoir trouvé la bonne solution pour éviter d'utiliser le "like" gràce au "contains" mais outre les grands avantages de ce dernier, il me récupère aussi des résultats totalement biaisés. Par exemple,

Code :
WHERE contains (TABLE,'"Lord of the Rings 2"')
me donne comme résultat :

- Lord of the Rings
- Lord of the Rings 1
- Lord of the Rings 2
- Lord of the Rings 3

alors qu'un "like" n'affichera que les "Lord of the Rings 2" ... Je comprends que "contains" outrepasse les caractère typographiques : ':>[ ... mais devrait-il en être de même avec le chiffre qui suit ?

Une idée? Y aurait-il moyen de configurer le fulltext ? Merci.
Marc_L est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2010, 15h54   #2
Invité régulier
 
Inscription : mai 2010
Messages : 37
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 37
Points : 5
Points : 5
Ok, j'ai trouvé ...

Tout d'abord, il faut mettre sur "off" le catalogue "stoplist" de l'index fulltext (avant sql 2008, cela s'appelait les "noisy words"):

Code :
ALTER FULLTEXT INDEX ON TABLE SET STOPLIST OFF
Il ne vous reste plus ensuite qu'à créer un nouvel index stoplist avec ce que vous voulez dedans et à l'activer.

bonne journée
Marc_L est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2010, 15h59   #3
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Bonjour

Je pense que le "2" doit etre considéré comme un "noise word" est n'est donc pas pris en compte pour effectuer la comparaison

il faudrait dans votre cas verifier la noiseList et retirer ce qui a du sens dans vos recherches
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h15.


 
 
 
 
Partenaires

Hébergement Web