Compartilhar via


Opção de configuração de servidor para transformar palavras de ruído

Use a opção de configuração do transform noise words servidor para suprimir uma mensagem de erro se palavras de ruído, ou seja, palavras irrelevantes, fizerem com que uma operação booliana em uma consulta de texto completo retorne zero linhas. Essa opção é útil para consultas de texto completo que usam o predicado CONTAINS em que as operações boolianas ou operações NEAR incluem palavras de ruído. Os valores possíveis são descritos na tabela a seguir.

Valor Descrição
0 As palavras de ruído (ou palavras irrelevantes) não são transformadas. Quando uma consulta de texto completo contiver palavras de ruído, a consulta não retornará nenhuma linha e o SQL Server gerará um aviso. Esse é o comportamento padrão.

Observe que o aviso é um aviso em tempo de execução. Portanto, se a cláusula de texto completo na consulta não for executada, o aviso não será gerado. Para uma consulta local, apenas um aviso é gerado, mesmo quando há várias cláusulas de consulta de texto completo. Para uma consulta remota, o servidor vinculado pode não retransmitir o erro; portanto, o aviso pode não ser gerado.
1 As palavras de ruído (ou palavras irrelevantes) são transformadas. Elas são ignoradas e o resto da consulta é avaliado.

Se forem especificadas palavras de ruído em uma condição de proximidade, o SQL Server as removerá. Por exemplo, a palavra de ruído is é removida de CONTAINS(<column_name>, 'NEAR (hello,is,goodbye)'), transformando a consulta de pesquisa em CONTAINS(<column_name>, 'NEAR(hello,goodbye)'). Observe que CONTAINS(<column_name>, 'NEAR(hello,is)') seria transformada simplesmente em CONTAINS(<column_name>, hello) porque há apenas um termo de pesquisa válido.

Efeitos da Configuração transformar palavras de ruído

Esta seção ilustra o comportamento de consultas que contêm uma palavra de ruído", the", nas configurações alternativas de transform noise words. Parte-se do pressuposto de que as cadeias de consulta de texto completo de exemplo são executadas em uma linha de tabela que contém os seguintes dados: [1, "The black cat"].

Observação

Todos esses cenários podem gerar um aviso de palavra de ruído.

  • Com transformar palavras de ruído definido como 0:

    Cadeia de consulta Result
    "cat" AND "the" Nenhum resultado (O comportamento é o mesmo para "the" AND "cat".)
    "cat" NEAR "the" Nenhum resultado (O comportamento é o mesmo para "the" NEAR "cat".)
    "the" AND NOT "black" Nenhum resultado
    "black" AND NOT "the" Nenhum resultado
  • Com transformar palavras de ruído definido como 1:

    Cadeia de consulta Result
    "cat" AND "the" Ocorrência da linha com ID 1
    "cat" NEAR "the" Ocorrência da linha com ID 1
    "the" AND NOT "black" Nenhum resultado
    "black" AND NOT "the" Ocorrência da linha com ID 1

Exemplo

O exemplo a seguir define transform noise words como 1.

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

Consulte Também

Opções de configuração do servidor (SQL Server)
CONTAINS (Transact-SQL)