Uma consulta de termos é semelhante a uma consulta de termo, mas aceita vários termos. A consulta retorna uma linha de dados se pelo menos uma das palavras-chave corresponder ao valor da coluna especificada. Use consultas de termos da mesma forma que o operador IN em instruções SQL.
Pré-requisitos
Inicialize uma instância do OTSClient. Para mais informações, consulte Inicialize uma instância do OTSClient.
Inicialmente, crie uma tabela de dados e grave dados nela. Para mais informações, consulte Crie uma tabela de dados e Grave dados.
Além disso, crie um índice de pesquisa para a tabela de dados. Para mais informações, consulte Crie um índice de pesquisa.
Parâmetros
|
Parâmetro |
Descrição |
|
table_name |
O nome da tabela de dados. |
|
index_name |
O nome do índice de pesquisa. |
|
offset |
A posição inicial da consulta atual. |
|
limit |
O número máximo de linhas que a consulta atual deve retornar. Para consultar apenas o número de linhas que atendem às condições da consulta, sem obter os dados específicos dessas linhas, defina o parâmetro limit como 0. |
|
get_total_count |
Especifica se a consulta retorna o número total de linhas que atendem às condições. Valor padrão: false, que desativa o retorno dessa contagem. Se você definir este parâmetro como true, o desempenho da consulta será comprometido. |
|
query_type |
O tipo da consulta. Defina este parâmetro como |
|
field_name |
O nome da coluna a ser consultada. |
|
terms |
As palavras-chave usadas para corresponder ao valor da coluna durante uma consulta de termos. A consulta retorna uma linha de dados se pelo menos uma das palavras-chave corresponder ao valor da coluna. |
|
sort |
O método usado para ordenar as linhas na resposta. Para mais informações, consulte Ordenação e paginação. |
|
columns_to_get |
Especifica se a consulta deve retornar todas as colunas das linhas que atendem às condições. Para isso, especifique os parâmetros return_type e return_names.
|
Exemplo
O código de exemplo a seguir mostra como consultar as linhas em que o valor da coluna keyword é "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);
FAQ
Referências
-
Ao usar um índice de pesquisa para consultar dados, utilize os seguintes métodos de consulta: consulta de termo, consulta de termos, consulta match all, consulta de correspondência, consulta de correspondência de frase, consulta de prefixo, consulta de intervalo, consulta de curinga, consulta booleana, consulta geográfica, consulta aninhada e consulta de existência. Use diferentes métodos para consultar dados em várias dimensões, conforme os requisitos do seu negócio.
Para ordenar ou paginar as linhas que atendem às condições da consulta, utilize o recurso de ordenação e paginação. Para mais informações, consulte Ordenação e paginação.
Para agrupar o conjunto de resultados com base em uma coluna específica, utilize o recurso de collapse (distinct). Dessa forma, os dados do tipo especificado aparecem apenas uma vez nos resultados da consulta. Para mais informações, consulte Collapse (distinct).
Para analisar dados em uma tabela de dados, como obter os valores extremos, a soma e o número total de linhas, execute operações de agregação ou instruções SQL. Para mais informações, consulte Agregação e Consulta SQL.
Para obter rapidamente todas as linhas que atendem às condições da consulta sem precisar ordená-las, chame as operações ParallelScan e ComputeSplits para usar o recurso de parallel scan. Para mais informações, consulte Parallel scan.