Partager via


WITH -- AS Group Alias Predicate

Les alias de groupe de colonnes permettent d’utiliser des noms plus courts à la place du nom d’une colonne ou d’un groupe de colonnes. Le prédicat d’alias de groupe facultatif fait partie de la clause WHERE. Sa syntaxe suit :

...WHERE[ WITH(<columns>) AS #<alias_name>]
[,WITH(<columns>) AS #<alias_name>]

Vous pouvez spécifier plusieurs alias de groupe, en séparant with... Prédicats AS par virgules.

Lorsqu’un alias de groupe est référencé dans un prédicat de clause WHERE, la condition est appliquée à chaque colonne du groupe. Les valeurs logiques résultant de la correspondance de chaque colonne sont combinées à l’aide de l’opérateur OU logique.

Un alias doit être défini avant de pouvoir être utilisé, et il ne peut être utilisé que dans la clause WHERE. Le nom de l’alias doit être un identificateur régulier précédé d’un signe de livre obligatoire (#).

Le spécificateur de colonne peut contenir un ou plusieurs spécificateurs de colonnes, séparés par des virgules. La liste des colonnes doit être placée entre parenthèses et pondération peut être affectée à chacun d’eux. Chaque colonne a la syntaxe suivante :

<column_identifier> [<weight_assignment>]

Pour plus d’informations sur la spécification des pondérations de colonne, consultez ' freetext Predicate et CONTAINS Predicate.

L’identificateur de colonne peut être normal ou délimité.

Exemples

Les exemples de clause WHERE suivants montrent quand et comment utiliser le prédicat d’alias de groupe. Le premier exemple montre une clause WHERE plus répétitive qui n’utilise pas l’alias de groupe.

...WHERE
    FREETEXT("System.ItemNameDisplay",'"computer software"')
    OR
    FREETEXT("System.Title",'"computer software"')
    OR 
    FREETEXT("System.Keywords",'"computer software"')

L’exemple précédent peut être simplifié à l’aide d’un alias de groupe, comme illustré dans l’exemple suivant.

...WHERE
    WITH("System.ItemNameDisplay","System.Title","System.Keywords")
    AS #Doc-Descriptions
    FREETEXT(#Doc-Descriptions,'"computer software"')

Voici un exemple de pondération positive où la propriété Title est plus pondérée pour déterminer le rang relatif.

...WHERE
    WITH("System.Title":0.8,*:0.5,
         "System.Keywords")
    AS #Doc-Descriptions
    FREETEXT(#Doc-Descriptions,'"computer software"')

Voici un exemple de pondération négative où la propriété title avec une pondération de 0 n’est pas prise en compte.

...WHERE
    WITH("System.Title":0,*:1.0,
         "System.Keywords")
    AS #Doc-Descriptions
    FREETEXT(#Doc-Descriptions,'"computer software"')

de référence

prédicat FREETEXT

conceptuelle

Full-Text prédicats

prédicats nonFull-Text