J'ai une base de données dans SQL Server 2008 avec des index de recherche de texte intégral. J'ai défini le Stopword 'al' dans la Stoplist. Cependant, quand je recherche une phrase avec le mot-clé «al», le mot «al» est toujours uesd dans le classement.Recherche plein texte: Les mots de bruit sont recherchés
Cela peut être lié au fait que je suis en train de diviser les termes de recherche et de les reconstruire. Je suis ensuite à la recherche dans plusieurs domaines et le classement des résultats: http://pastebin.com/fdce11ff. Cela fonctionne pour briser une recherche
'al hamra'
dans
("*al*" ~ "*hamra*") OR ("*al*" OR "*hamra*")
pour la recherche de texte intégral.
Imaginez ce scénario:
Nom: Al Hamra, Auteur: Jack Brown, Genre: Fiction Al Karawan, Auteur: Al Hanz, Genre: Romance
maintenant une recherche de « al hamra ' renverra ' Al Karawan ', malgré le fait que ' al ' est dans la liste d'arrêt. Pourquoi est-ce? Je pensais que les listes d'attente feraient perdre des mots aux mots?
La requête a montré que 'al' correspond exactement. J'ai découvert que le 'al' était dans l'arrêt anglais. J'ai donc effacé la liste d'arrêt, et j'ai rajouté 'al' au neutre. Cependant, maintenant il ne montre pas quand je cours http://pastebin.com/m6d9fc5f4. J'ai confirmé qu'il est présent, car je ne peux pas le rajouter (donne une erreur). La requête que vous avez mentionnée montre encore 'al' comme une correspondance exacte. –
Oh, pour clarifier, mon catalogue répertorie tous les index de texte intégral dans 'Neutre'. –
J'ai essayé de changer la langue des listes d'arrêt et de tous les index de texte intégral en anglais. La liste d'arrêt s'affiche maintenant en utilisant la requête http://pastebin.com/m6d9fc5f4, mais l'exécution de votre requête montre toujours 'al' comme une correspondance exacte :( –