Partager via


Prédicat FREETEXT

Le prédicat FREETEXT fait partie de la clause WHERE et prend en charge la recherche de mots et d’expressions dans des colonnes de texte. Utilisez le prédicat FREETEXT pour rechercher des documents contenant des combinaisons de mots de recherche répartis dans le contenu ou les colonnes spécifiés. Pour obtenir la valeur de classement, incluez System.Search.Rank, qui est un classement de pertinence, sous forme de colonne dans l’instruction SELECT.

Le prédicat FREETEXT a la syntaxe suivante :

FREETEXT
(["<fulltext_column>",]'<freetext_condition>'[,<LCID>])...

La référence de colonne de texte intégral est facultative. Avec elle, vous pouvez spécifier une seule colonne ou un alias de regroupement de colonnes sur lequel le prédicat FREETEXT est testé. Lorsque la colonne de texte intégral est spécifiée sous la forme « ALL » ou « * », toutes les propriétés de texte indexées sont recherchées. Bien que la colonne ne soit pas obligatoire pour être une propriété de texte, les résultats peuvent être sans signification si la colonne est d’un autre type de données. Le nom de colonne peut être un identificateur de standard ou délimité, et vous devez le séparer de la condition par une virgule. Si aucune condition de texte intégral n’est fournie, la colonne Contenu, qui est le corps du document, est utilisée.

Vous pouvez spécifier des paramètres régionaux de recherche pour identifier l’analyseur de mots approprié et les formulaires d’inflection pour la requête de recherche. Les valeurs de paramètres régionaux valides sont un identificateur de code de langage standard Windows (LCID). Par exemple, 1033 est le LCID pour les États-Unis-Anglais. Placez le LCID comme dernier élément entre parenthèses de la clause FREETEXT. Pour plus d’informations sur la recherche et les langues, consultez Utilisation de recherches localisées.

Note

Les paramètres régionaux de recherche par défaut sont les paramètres régionaux par défaut du système.

 

Vous devez placer la partie condition de texte libre entre guillemets simples et comporter un ou plusieurs termes de recherche. Le prédicat FREETEXT ne prend pas en charge les opérations logiques. Pour rechercher une expression comme s’il s’agissait d’un seul mot, placez l’expression entre guillemets doubles.

Lorsque vous utilisez le prédicat FREETEXT, les résultats de la requête de recherche retournent des documents contenant tous les termes de recherche. Les termes n’ont pas besoin d’apparaître dans un ordre particulier. Les documents qui contiennent plus de termes de recherche ont des valeurs de colonne de classement supérieures.

Exemples

L’exemple suivant recherche des documents contenant « ordinateur », « logiciel », « matériel » ou combinaisons de ces mots :

WHERE FREETEXT('computer software hardware')

Note

Vous ne pouvez pas utiliser la correspondance à un mot unique et la correspondance d’expressions dans le même prédicat FREETEXT.

 

Lors de l’exécution de requêtes avec des contractions, vous devez échapper aux guillemets dans la contraction lors de l’utilisation de FREETEXT, mais pas lors de l’utilisation de CONTAINS.

Par exemple, la syntaxe suivante échoue :

WHERE FREETEXT(*,'"We'll meet next week"')

La syntaxe correcte comprend deux guillemets simples, et non un guillemet double.

La syntaxe suivante réussit :

WHERE FREETEXT(*,'"We''ll meet next week"')

de référence

CONTAINS Predicate

clause WHERE

conceptuelle

prédicats nonFull-Text