Condividi tramite


Opzione transform noise words

L'opzione di configurazione del server transform noise words consente di evitare la visualizzazione di un messaggio di errore se le parole non significative fanno sì che un'operazione booleana su una query full-text non restituisca alcuna riga. Questa opzione risulta utile per le query full-text che utilizzano il predicato CONTAINS e con operazioni booleane o operazioni NEAR che includono parole non significative. I valori possibili sono illustrati nella tabella seguente.

Valore

Descrizione

0

Le parole non significative non vengono trasformate. Quando una query full-text contiene parole non significative, la query non restituisce alcuna riga e SQL Server genera un avviso. Questo comportamento è quello predefinito.

NotaNota
L'avviso è un avviso di run-time. Pertanto, se la clausola full-text nella query non viene eseguita, l'avviso non verrà generato. Per una query locale, verrà generato un solo avviso, anche se sono presenti più clausole di query full-text. Per una query remota, il server collegato potrebbe non inoltrare l'errore ed è pertanto possibile che l'avviso non venga generato.

1

Le parole non significative vengono trasformate. Vengono ignorate e il resto della query viene valutato.

Se le parole non significative vengono specificate in un termine vicino, SQL Server le rimuove. Ad esempio, la parola non significativa is viene rimossa da CONTAINS(<column_name>, 'NEAR (hello,is,goodbye)'), trasformando la query di ricerca in CONTAINS(<column_name>, 'NEAR(hello,goodbye)'). Si noti che CONTAINS(<column_name>, 'NEAR(hello,is)') viene trasformata semplicemente in CONTAINS(<column_name>, hello) perché è presente solo un termine di ricerca valido.

Effetti dell'impostazione di transform noise words

In questa sezione viene illustrato il comportamento delle query che contengono la parola non significativa "the" nelle impostazioni alternative di transform noise words. Si supponga di eseguire le stringhe di query full-text di esempio su una riga di tabella contenente i dati seguenti: [1, "The black cat"].

[!NOTA]

Questi scenari possono generare un avviso di parola non significativa.

  • Con transform noise words impostato su 0:

    Stringa query

    Risultato

    "cat" AND "the"

    Nessun risultato (il comportamento è uguale a quello di "the" AND "cat").

    "cat" NEAR "the"

    Nessun risultato (il comportamento è uguale a quello di "the" AND "cat").

    "the" AND NOT "black"

    Nessun risultato

    "black" AND NOT "the"

    Nessun risultato

  • Con transform noise words impostato su 1:

    Stringa query

    Risultato

    "cat" AND "the"

    Risultato per la riga con ID 1

    "cat" NEAR "the"

    Risultato per la riga con ID 1

    "the" AND NOT "black"

    Nessun risultato

    "black" AND NOT "the"

    Risultato per la riga con ID 1

Esempio

Nell'esempio seguente l'opzione transform noise words viene impostata su 1.

sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
sp_configure 'transform noise words', 1;
RECONFIGURE;
GO