Compartilhar via


Predicado CONTAINS

O predicado CONTAINS faz parte da cláusula WHERE e dá suporte à pesquisa de palavras e frases em colunas de texto. O predicado CONTAINS tem recursos para correspondência de palavras, correspondência de formas de palavras inflexíveis, pesquisa usando caracteres curinga e pesquisa usando proximidade. Você também pode aplicar pesos em um predicado CONTAINS para definir a importância das colunas em que o termo de pesquisa é encontrado. O predicado CONTAINS é mais adequado para correspondências exatas, ao contrário do predicado FREETEXT , que é mais adequado para localizar documentos que contêm combinações das palavras de pesquisa espalhadas pela coluna. As pesquisas não diferenciam letras maiúsculas de minúsculas.

Veja a seguir a sintaxe básica do predicado CONTAINS:

...CONTAINS(["<fulltext_column>",]'<contains_condition>'[,<LCID>])...

A referência fulltext_column é opcional. Com ele, você pode limitar a pesquisa a uma única coluna ou um grupo de colunas em relação ao qual o predicado CONTAINS é 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 coluna de texto completo for especificada, a coluna System.Search.Contents, que é o corpo do documento, será usada.

A parte LCID do predicado especifica a localidade de pesquisa. Isso instrui o mecanismo de pesquisa a usar o separador de palavras apropriado e formulários inflexíveis para a consulta de pesquisa. Para especificar a localidade, forneça o 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 CONTAINS. 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.

A parte contains_condition deve estar entre aspas simples para palavras simples ou aspas duplas para frases e consiste em um ou mais termos de pesquisa de conteúdo que são combinados usando os operadores lógicos AND ou OR. Você pode usar o operador unário opcional NOT após um operador AND para negar o valor lógico de um termo de pesquisa de conteúdo.

Observação

O operador NOT pode ocorrer somente após AND. Você não poderá usar o operador NOT se houver apenas uma condição de correspondência ou após o operador OR .

Você pode usar parênteses para agrupar e aninhar termos de pesquisa de conteúdo. A tabela a seguir descreve a ordem de precedência para os operadores lógicos.

Ordem (precedência) Operador lógico
Primeiro (mais alto) NOT
Segundo AND
Terceiro (mais baixo) OR

Os operadores lógicos do mesmo tipo são associativos e não há nenhuma ordem de cálculo especificada. Por exemplo, (A AND B) AND (C AND D) pode ser calculado (B AND C) AND (A AND D) sem nenhuma alteração no resultado lógico.

A tabela a seguir descreve os tipos de termos de pesquisa de conteúdo.

Type Descrição Exemplos
Word Uma única palavra sem espaços ou outra pontuação. Aspas duplas não são necessárias.
...WHERE CONTAINS ('computer')
Frase Várias palavras ou espaços incluídos.

              
              ... WHERE CONTAINS ('"software de computador"')

Ou, para usar uma aspa dupla:

... WHERE CONTAINS ('"computer ""science"" "')

Curinga Palavras ou frases com o asterisco (*) adicionado ao final. Para obter mais informações, consulte Usando curingas no predicado CONTAINS.

              
              ... WHERE CONTAINS ('"compu*"')

Matches "computer", "computers", "computation", and "compulsory"

Coluna de texto completo Um nome de coluna de propriedade em relação ao qual corresponder à consulta restante.
...WHERE CONTAINS (System.Author,'"James" OR "Juan"')
Boolean Palavras, frases e cadeias de caracteres curinga combinadas usando os operadores boolianos AND, OR ou NOT. Coloque os termos boolianos entre aspas duplas.

              
              ... WHERE CONTAINS ('"monitor do computador" E "programa de software" E "componente de instalação"')

... WHERE CONTAINS (' "computer" AND "software" AND "install" ' )

...WHERE CONTAINS ('"computer software install"')

Near Palavras, frases ou curingas separados pela função NEAR. Para obter mais informações, consulte TERMO PRÓXIMO.
...WHERE CONTAINS
('"computer" NEAR "software"')
FormsOf Corresponde a uma palavra e às versões inflexíveis dessa palavra. Para obter mais informações, consulte Termo FORMSOF.

              
              ... WHERE CONTAINS ('FORMSOF (INFLECTIONAL, "happy"))

Matches "happy", "happier", "happiest", "happily", and so on.

IsAbout Combina resultados correspondentes em termos de pesquisa de várias palavras, frases ou caracteres curinga. Opcionalmente, cada termo de pesquisa pode ser ponderado. Opcionalmente, você pode especificar o método de cálculo de classificação, que combina os pesos e quantos itens o documento corresponde. Para obter mais informações, consulte Termo ISABOUT.
...WHERE CONTAINS
('ISABOUT ( "computer" WEIGHT (0.75) ,
    "software" WEIGHT (0.25) ,
    "development" WEIGHT (0.255)
 ) RANKMETHOD INNER PRODUCT
')

Esta seção inclui os tópicos a seguir:

Referência

Cláusula WHERE

Conceitual

Predicados de texto completo

Predicados de texto não completo