Condividi tramite


WITH -- AS Group Alias Predicate

Gli alias del gruppo di colonne consentono di usare nomi più brevi al posto del nome di una colonna o di un gruppo di colonne. Il predicato alias del gruppo facoltativo fa parte della clausola WHERE. La sintassi seguente:

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

È possibile specificare più alias di gruppo, separando WITH... Predicati AS per virgole.

Quando un alias di gruppo viene definito in un predicato di clausola WHERE, la condizione viene applicata a ogni colonna del gruppo. I valori logici risultanti dalla corrispondenza di ogni colonna vengono combinati usando l'operatore OR logico.

Un alias deve essere definito prima che possa essere usato e può essere usato solo all'interno della clausola WHERE. Il nome alias deve essere un identificatore regolare preceduto da un segno di sterlina obbligatorio (#).

L'identificatore di colonna può contenere uno o più identificatori di colonna, separati da virgole. L'elenco di colonne deve essere racchiuso tra parentesi e peso può essere assegnato a ognuno. Ogni colonna ha la sintassi seguente:

<column_identifier> [<weight_assignment>]

Per informazioni sulla specifica dei pesi di colonna, vedere Predicato FREETEXT e CONTAINS Predicate.

L'identificatore di colonna può essere regolare o delimitato.

Esempio

Gli esempi di clausola WHERE seguenti illustrano quando e come è possibile usare il predicato alias del gruppo. Il primo esempio mostra una clausola WHERE più ripetitiva che non usa l'aliasing del gruppo.

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

L'esempio precedente può essere semplificato usando un alias di gruppo, come illustrato nell'esempio seguente.

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

Di seguito è riportato un esempio di peso positivo in cui la proprietà Title viene data maggiore peso per determinare la classificazione relativa.

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

Di seguito è riportato un esempio di peso negativo in cui la proprietà Title con peso pari a 0 non viene considerata.

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

Riferimento

Predicato FREETEXT

Informazioni concettuali

Predicati full-text

Predicati non full-text