Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment faire un CONTAINS() sur deux colonnes de SQL de recherche d'index de texte intégral

Étant donné que le champ NameID est de type varchar, le texte intégral gérera parfaitement l'indexation.

Le raisonnement derrière CONTAINS(NameID, '1') ne renvoyant aucun résultat de recherche est que '1' (et d'autres nombres aussi petits) sont considérés comme des mots parasites par le texte intégral et filtrés pendant le temps d'indexation.

Pour obtenir une liste des mots vides, exécutez la requête suivante -

select * from sys.fulltext_system_stopwords where language_id = 1033;

Vous devez désactiver ou modifier la liste d'arrêt, dont un exemple peut être trouvé ici .