Predicado FREETEXT
O predicado FREETEXT faz parte da cláusula WHERE e dá suporte à pesquisa de palavras e frases em colunas de texto. Use o predicado FREETEXT para localizar documentos que contêm combinações das palavras de pesquisa espalhadas pelo conteúdo ou colunas especificadas. Para obter o valor de classificação, inclua System.Search.Rank, que é uma classificação de relevência, como uma coluna na instrução SELECT.
O predicado FREETEXT tem a seguinte sintaxe:
FREETEXT
(["<fulltext_column>",]'<freetext_condition>'[,<LCID>])...
A referência de coluna de texto completo é opcional. Com ele, você pode especificar uma única coluna ou um alias de agrupamento de colunas no qual o predicado FREETEXT é testado. Quando a coluna de texto completo é especificada como "ALL" ou "*", todas as propriedades de texto indexadas são pesquisadas. Embora a coluna não seja necessária para ser uma propriedade de texto, os resultados poderão não ter sentido se a coluna for algum outro tipo de dados. O nome da coluna pode ser um identificador regular ou delimitado e você deve separá-lo da condição por vírgula. Se nenhuma condição de texto completo for fornecida, a coluna Conteúdo, que é o corpo do documento, será usada.
Você pode especificar uma localidade de pesquisa para identificar o separador de palavras apropriado e formulários inflexíveis para a consulta de pesquisa. Os valores de localidade válidos são um LCID (identificador de código de idioma padrão) do Windows. Por exemplo, 1033 é o LCID para Estados Unidos inglês. Coloque o LCID como o último item dentro dos parênteses da cláusula FREETEXT. Para obter informações importantes sobre pesquisa e idiomas, consulte Usando pesquisas localizadas.
Observação
A localidade de pesquisa padrão é a localidade padrão do sistema.
Você deve colocar a parte da condição de texto livre entre aspas simples e ela deve consistir em um ou mais termos de pesquisa. O predicado FREETEXT não dá suporte a operações lógicas. Para pesquisar uma frase como se fosse uma única palavra, coloque a frase entre aspas duplas.
Quando você usa o predicado FREETEXT, os resultados da consulta de pesquisa retornam documentos que contêm todos os termos de pesquisa. Os termos não precisam aparecer em nenhuma ordem específica. Documentos que contêm mais termos de pesquisa têm valores de coluna de classificação mais altos.
Exemplos
O exemplo a seguir pesquisa documentos que contenham "computador", "software", "hardware" ou combinações dessas palavras:
WHERE FREETEXT('computer software hardware')
Observação
Você não pode usar correspondência de palavras simples e correspondência de frases no mesmo predicado FREETEXT.
Ao executar consultas com contrações, você deve escapar das aspas na contração ao usar FREETEXT, mas não ao usar CONTAINS.
Por exemplo, a seguinte sintaxe falha:
WHERE FREETEXT(*,'"We'll meet next week"')
A sintaxe correta inclui duas aspas simples, não uma aspa dupla.
A sintaxe a seguir é bem-sucedida:
WHERE FREETEXT(*,'"We''ll meet next week"')
Tópicos relacionados
-
Referência
-
Conceitual