Share via


Formatos de termos de consulta suportados (Pesquisa de Texto Completo)

Este tópico apresenta os formulários de consultas de texto completo que contam com suporte do SQL Server e resume o suporte fornecido para cada formulário de consulta pelos predicados de texto completo e funções com valores de conjunto de linhas. Pesquisas de texto completo podem ser executadas somente em colunas que têm índices de texto completo.

Formato de termo de consulta

Descrição

Suportado por

Uma ou mais palavras ou frases específicas (termo simples)

Na pesquisa de texto completo, a palavra é considerada um token. Um token é identificado por separadores de palavras apropriados, seguindo as regras lingüísticas do idioma especificado. Uma frase válida pode ser composta por várias palavras, com ou sem pontuação entre elas.

Por exemplo, "croissant" é uma palavra e "café com leite" é uma frase. Palavras e frases como essas são chamadas de termos simples.

Para obter mais informações, consulte Procurando uma palavra ou frase específica (termo simples).

CONTAINS e CONTAINSTABLE, que procuram uma correspondência exata para a frase, e FREETEXT e FREETEXTTABLE, que dividem a frase em palavras separadas.

Uma palavra ou uma frase na qual as palavras começam com o texto especificado (termo de prefixo).

Um termo de prefixo refere-se a uma cadeia de caracteres colocada na frente de uma palavra para gerar uma palavra derivada ou uma forma flexionada.

Para um único termo de prefixo, qualquer palavra que comece com o termo especificado fará parte do conjunto de resultados. Por exemplo, o termo "auto*" retorna "automático", "automóvel" e assim por diante.

Para uma frase, cada palavra é considerada um termo de prefixo. Por exemplo, o termo "tran auto*" corresponde a "transmissão automática" e "transdutor de automóvel", mas não a "transmissão de motor automático".

Para obter mais informações, consulte Executando pesquisas de prefixo.

CONTAINS e CONTAINSTABLE

As formas flexionadas de uma palavra específica (termo de geração)

As formas flexionadas são os diferentes tempos de um verbo ou as formas singular e plural de um substantivo. Por exemplo, procure a flexão da palavra "dirigir". Se várias linhas da tabela contiverem as palavras "dirigir", "dirige", "dirigiu", "dirigindo" e "dirigido", todas elas fariam parte do conjunto de resultados, pois cada uma delas seria uma flexão gerada da palavra dirigir.

Para obter mais informações, consulte Pesquisando a forma flexionada de uma palavra específica (termo de geração).

Por padrão, as consultas FREETEXT e FREETEXTTABLE procuram termos flexionados de todas as palavras especificadas.

CONTAINS e CONTAINSTABLE suportam um argumento INFLECTIONAL opcional.

Uma palavra ou frase perto de outra palavra ou frase (termo de proximidade).

Um termo de proximidade indica palavras ou frases que têm bastante proximidade com outra palavra ou frase ou com duas palavras ou frases em qualquer ordem.

Por exemplo, você quer localizar as linhas em que a palavra "gelo" esteja perto de "hóquei" ou em que frase "patinação no gelo" esteja perto da frase "hóquei no gelo". A proximidade de dois termos ou frases é calculada internamente e não pode ser configurada pelo usuário. O cálculo da proximidade considera muitos pontos de dados.

Esse tipo de consulta também retorna documentos ou linhas que contêm os termos de pesquisa, mesmo que não sejam próximos um do outro. Para esses resultados, a classificação é zero (0).

Para obter mais informações, consulte Pesquisando palavras ou frases parecidas com outras palavras ou frases (termo de proximidade).

CONTAINSTABLE

ObservaçãoObservação
FREETEXT e FREETEXTTABLE decifram a sintaxe de proximidade como cadeias de caracteres pesquisáveis e não retornam os resultados esperados.

Os sinônimos de uma palavra específica (dicionário de sinônimos)

Um dicionário de sinônimos define sinônimos especificados pelo usuário para os termos. Por exemplo, se uma entrada, "{carro, automóvel, caminhão, van}", for adicionada ao dicionário de sinônimos, será possível pesquisar o sinônimo da palavra "carro". Todas as linhas da tabela consultada que contiverem as palavras "automóvel", "caminhão", "van" ou "carro" serão exibidas no conjunto de resultados, pois cada uma dessas palavras pertence a um conjunto de expansão de sinônimos contendo a palavra "carro".

Para obter informações sobre a estrutura dos arquivos de dicionário de sinônimos, consulte Configuração do dicionário de sinônimos.

As consultas FREETEXT e FREETEXTTABLE usam o dicionário de sinônimos por padrão.

CONTAINS e CONTAINSTABLE suportam um argumento THESAURUS opcional.

Palavras ou frases que usam valores ponderados (termo ponderado).

Um valor de ponderação que indica o grau de importância de cada palavra e frase em um conjunto de palavras e frases. Um valor ponderado de 0,0 é o mais baixo e um valor ponderado de 1,0 é o mais alto.

Por exemplo, em uma consulta que pesquisa vários termos, é possível atribuir a cada palavra da pesquisa um valor equilibrado indicando sua importância com relação às demais palavras da pesquisa. O resultado desse tipo de consulta retorna primeiro as linhas mais relevantes, de acordo com o peso relativo atribuído às palavras da pesquisa. Os conjuntos de resultados contêm documentos ou linhas que, por sua vez, contêm qualquer um dos termos especificados (ou conteúdo entre eles); todavia, alguns resultados serão considerados mais relevantes do que outros devido à variação dos valores ponderados associados aos diferentes termos de pesquisa.

Para obter mais informações, consulte Pesquisando palavras ou frases usando valores ponderados (termo ponderado).

CONTAINSTABLE

ObservaçãoObservação
O uso de CONTAINS ou FREETEXT com termos ponderados não confere relevância a linhas recuperadas. FREETEXT e FREETEXTTABLE decifram os níveis de importância como cadeias de caracteres pesquisáveis e não retornam os resultados esperados.