Partager via


WHERE, clause dans la syntaxe SQL de recherche SharePoint

Dernière modification : mercredi 21 avril 2010

S’applique à : SharePoint Server 2010

Permet de spécifier les conditions qui déterminent si un document est inclus dans les résultats renvoyés par la requête.

…WHERE [<group_aliases>] <search_condition>

Remarques

Au niveau le plus élevé, il y a deux parties dans la syntaxe de la clause WHERE, la ou les colonnes à rechercher, et la condition de recherche.

Pour simplifier les requêtes complexes, vous pouvez assigner un alias à un groupe d'une ou de plusieurs colonnes. Pour plus d'informations sur les alias de groupe, voir WITH -- AS, prédicat d’alias de groupe dans la syntaxe SQL de recherche SharePoint.

La condition de recherche qui fait partie de la clause WHERE spécifie les critères de correspondance de la recherche. Des documents sont renvoyés s'ils correspondent aux opérateurs de comparaison et aux combinaisons logiques spécifiés pour la requête. Le résultat d'une condition de recherche est une valeur booléenne, TRUE ou FALSE. Si le résultat est TRUE, le document est inclus. Si le résultat est FALSE, il ne l'est pas.

Les documents renvoyés dans une requête de Recherche SharePoint Server sont classés par rang en fonction de leur degré de correspondance avec les conditions de recherche.

Spécification des zones de recherche

Vous pouvez indiquer si les résultats de la recherche doivent inclure du contenu provenant d'une zone de recherche particulière dans une condition de recherche spécifiée au sein de la clause WHERE. En voici la syntaxe :

…FROM scope() WHERE "scope"=<search scope name>…

Par exemple :

SELECT title, author, rank FROM scope() WHERE "scope"='All Sites'

Prédicats de recherche

Les prédicats de recherche sont des expressions qui déclarent certains faits relatifs à une valeur. Les documents qui répondent aux exigences d'un prédicat ont une valeur appropriée pour la propriété spécifiée dans le prédicat.

Une condition de recherche comprend un ou plusieurs prédicats, ou une ou plusieurs conditions de recherche, qui sont combinés à l'aide des opérateurs logiques AND, OR ou AND NOT. L'opérateur unaire facultatif NOT permet d'interdire la valeur logique d'un prédicat ou d'une condition de recherche. Vous pouvez utiliser des parenthèses pour regrouper et imbriquer les termes logiques.

Le tableau suivant montre l'ordre de priorité des opérateurs logiques.

Ordre (Priorité)

Opérateur logique

Premier (niveau le plus élevé)

NOT

Second

AND

Troisième (niveau le moins élevé)

OR

Les opérateurs logiques du même type sont associatifs ; par ailleurs, il n'y a pas d'ordre de calcul spécifique. Par exemple, (A AND B) AND (C AND D) peut être calculé comme suit : (B AND C) AND (A AND D), sans avoir d'impact sur le résultat logique.

Notes

Vous ne pouvez pas appliquer l'opérateur logique unaire NOT au prédicat CONTAINS ou au prédicat FREETEXT, si celui-ci est situé en premier au sein de la clause WHERE. Par exemple,

WHERE NOT CONTAINS ('computer')

n'est pas accepté ; cependant,

WHERE CONTAINS ('software') AND NOT CONTAINS ('computer')

est accepté.

Dans les requêtes complexes, vous pouvez accorder une importance plus élevée aux correspondances de certaines colonnes par rapport à d'autres. Par exemple, lorsque vous recherchez des documents traitant de « conception logicielle », le fait de trouver le terme de recherche dans le titre du document est vraisemblablement un meilleur résultat que le fait de trouver des mots individuels au sein du texte du document. Pour influencer le classement des documents de cette manière, SQL prend en charge le poids des conditions de recherche. Pour plus d'informations sur le poids des colonnes, voir CONTAINS, prédicat dans la syntaxe SQL de recherche SharePoint et FREETEXT, prédicat dans la syntaxe SQL de recherche SharePoint.

Il existe deux groupes de prédicats de recherche dans Recherche de contenu d’entreprise SharePoint. Les prédicats de recherche en texte intégral correspondent généralement au sens du contenu, du titre et d’autres colonnes ; en outre, ils prennent en charge la correspondance linguistique (par exemple les formes de mots alternatives, les expressions, la recherche de proximité). En revanche, les prédicats de recherche hors texte intégral correspondent à la valeur des colonnes spécifiées et n’incluent pas de traitement linguistique particulier ; toutefois, dans de nombreux cas ils fournissent une concordance au modèle basée sur les caractères.

Notes

Si la requête renvoie un document parce qu'un prédicat hors texte intégral a la valeur TRUE pour ce document, le calcul de la valeur du rang est égal à 1 000.

Les tableaux suivants décrivent les prédicats de recherche en texte intégral et les prédicats de recherche hors texte intégral.

Prédicat de texte intégral

Description

CONTAINS

Prend en charge les recherches complexes de termes dans les colonnes de texte du document (par exemple le titre, le contenu). Peut rechercher les inflexions des termes de recherche, tester la proximité des termes et effectuer des comparaisons logiques. Les termes de recherche peuvent inclure des caractères génériques.

FREETEXT

Recherche les documents qui correspondent au sens de l'expression de recherche. Une correspondance est recherchée au niveau des termes apparentés et des expressions similaires ; la colonne du rang est calculée en fonction de la proximité avec laquelle le document correspond à l'expression de recherche. Les termes de recherche ne peuvent pas inclure de caractères génériques.

Prédicat hors texte intégral

Description

LIKE

Les valeurs de colonnes sont comparées à l'aide d'une concordance simple au modèle par caractères génériques.

Comparaison de valeurs littérales

Les valeurs de colonnes sont comparées aux chaînes, dates, valeurs d'horodatage, valeurs numériques et autres valeurs littérales. Ce prédicat prend en charge les opérateurs d'égalité et d'inégalité, par exemple supérieur à et inférieur à.

Comparaisons à valeurs multiples (ARRAY)

Les colonnes à valeurs multiples sont comparées à un tableau à valeurs multiples de littéraux.

NULL

Les valeurs de colonnes indéfinies pour le document peuvent être détectées à l'aide du prédicat NULL.

Dans cette section

WITH -- AS, prédicat d’alias de groupe dans la syntaxe SQL de recherche SharePoint

Prédicats de texte intégral dans la syntaxe SQL de recherche SharePoint

Prédicats qui ne sont pas en texte intégral dans la syntaxe SQL de la recherche SharePoint

Voir aussi

Référence

Instruction SELECT dans la syntaxe SQL SharePoint Search

FROM, clause dans la syntaxe SQL de recherche SharePoint

Concepts

Référence de la syntaxe SQL SharePoint Search