Compartilhar via


Configuração do servidor: transformar palavras de ruído

Aplica-se a:SQL Server

Use a opção de configuração do transform noise words servidor para suprimir uma mensagem de erro se palavras de ruído (também conhecidas como palavras irrelevantes) causarem uma operação booleana em uma consulta de texto completo que retorna 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 (padrão) 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.

Nota: 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. Eles são ignorados e o restante 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)'). Nota:CONTAINS(<column_name>, 'NEAR(hello,is)') seria transformado em simplesmente CONTAINS(<column_name>, hello) porque há apenas um termo de pesquisa válido.

Efeitos da configuração de palavras de ruído de transformação

Esta seção ilustra o comportamento de consultas que contêm uma palavra de ruído, the, sob as configurações alternativas de transform noise words. Supõe-se que as cadeias de consulta de texto completo de exemplo sejam 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 Resultado
    cat E the Nenhum resultado (o comportamento é o mesmo para the AND cat.)
    cat PERTO the Nenhum resultado (o comportamento é o mesmo para the NEAR cat.)
    the E NÃO black Nenhum resultado
    black E NÃO the Nenhum resultado
  • Com transformar palavras de ruído definido como 1:

    Cadeia de consulta Resultado
    cat E the Ocorrência da linha com ID 1
    cat PERTO the Ocorrência da linha com ID 1
    the E NÃO black Nenhum resultado
    black E NÃO the Ocorrência da linha com ID 1

Exemplos

O exemplo a seguir define transform noise words como 1.

EXECUTE sp_configure 'show advanced options', 1;
RECONFIGURE;
GO

EXECUTE sp_configure 'transform noise words', 1;
RECONFIGURE;
GO