A consulta de termos assemelha-se à consulta de termo, mas aceita múltiplos termos. O sistema retorna uma linha de dados se pelo menos uma palavra-chave corresponder ao valor da coluna especificada. As consultas de termos funcionam de modo equivalente ao operador IN em instruções SQL.
Pré-requisitos
Instância OTSClient inicializada. Para mais informações, consulte Inicializar uma instância OTSClient.
Tabela de dados criada e com dados gravados. Para mais informações, consulte Criar uma tabela de dados e Gravar dados.
Índice de busca criado para a tabela de dados. Para mais informações, consulte Criar um índice de busca.
Parâmetros
|
Parâmetro |
Descrição |
|
table_name |
Nome da tabela de dados. |
|
index_name |
Nome do índice de busca. |
|
offset |
Posição inicial da consulta atual. |
|
limit |
Número máximo de linhas a retornar na consulta atual. Para obter apenas a quantidade de linhas correspondentes às condições, sem recuperar os dados específicos, defina o parâmetro limit como 0. |
|
get_total_count |
Indica se o sistema deve retornar o número total de linhas correspondentes às condições da consulta. Valor padrão: false (a contagem total não é retornada). Definir este parâmetro como true compromete o desempenho da consulta. |
|
query_type |
Tipo da consulta. Defina este parâmetro como |
|
field_name |
Nome da coluna a consultar. |
|
terms |
Palavras-chave usadas para comparar com o valor da coluna durante a consulta de termos. O sistema retorna uma linha quando pelo menos uma palavra-chave corresponde ao valor da coluna. |
|
sort |
Método de ordenação das linhas na resposta. Para mais informações, consulte Ordenação e paginação. |
|
columns_to_get |
Define se todas as colunas das linhas correspondentes devem ser retornadas. Configure esse comportamento pelos parâmetros return_type e return_names.
|
Exemplo
O código de exemplo abaixo demonstra como consultar linhas nas quais a coluna keyword tenha o valor "keyword" ou "php" na tabela de dados.
$request = array(
'table_name' => 'php_sdk_test',
'index_name' => 'php_sdk_test_search_index',
'search_query' => array(
'offset' => 0,
'limit' => 5,
'get_total_count' => true,
'query' => array(
'query_type' => QueryTypeConst::TERMS_QUERY,
'query' => array(
'field_name' => 'keyword',
'terms' => array(
"keyword",
"php"
)
)
),
'sort' => array(
array(
'field_sort' => array(
'field_name' => 'long',
'order' => SortOrderConst::SORT_ORDER_DESC,
'mode' => SortModeConst::SORT_MODE_AVG
)
)
)
),
'columns_to_get' => array(
'return_type' => ColumnReturnTypeConst::RETURN_SPECIFIED,
'return_names' => array('keyword', 'long')
)
);
$response = $otsClient->search($request);
Perguntas frequentes
Referências
-
Ao utilizar um índice de busca para consultar dados, empregue os seguintes métodos: consulta de termo, consulta de termos, consulta match all, consulta match, consulta match phrase, consulta de prefixo, consulta de intervalo, consulta curinga, consulta booleana, consulta geográfica, consulta aninhada e consulta exists. Combine diferentes métodos para obter dados sob múltiplas dimensões conforme as necessidades do seu negócio.
Para ordenar ou paginar as linhas correspondentes aos critérios de consulta, utilize o recurso de ordenação e paginação. Para mais informações, consulte Ordenação e paginação.
Caso precise agrupar o conjunto de resultados com base em uma coluna específica, use o recurso collapse (distinct). Assim, dados do tipo especificado aparecem apenas uma vez nos resultados da consulta. Para mais informações, consulte Collapse (distinct).
Para analisar dados de uma tabela, como obter valores extremos, somas e contagem total de linhas, execute operações de agregação ou instruções SQL. Para mais informações, consulte Agregação e Consulta SQL.
Se precisar obter rapidamente todas as linhas correspondentes sem ordená-las, chame as operações ParallelScan e ComputeSplits para usar o recurso de varredura paralela. Para mais informações, consulte Varredura paralela.