Use a consulta match all para corresponder a todas as linhas de uma tabela, obter o número total de linhas ou retornar várias linhas aleatórias.
Pré-requisitos
Instância OTSClient inicializada. Para mais informações, consulte Inicializar uma instância OTSClient.
Tabela de dados criada e preenchida. Para mais informações, consulte Criar uma tabela de dados e Gravar dados.
Índice de pesquisa criado para a tabela de dados. Para mais informações, consulte Criar um índice de pesquisa.
Parâmetros
|
Parâmetro |
Descrição |
|
table_name |
Nome da tabela de dados. |
|
index_name |
Nome do índice de pesquisa. |
|
offset |
Posição inicial da consulta atual. |
|
limit |
Número máximo de linhas a serem retornadas pela consulta atual. Para consultar apenas a quantidade de linhas que atendem aos critérios sem retornar dados específicos, defina Limit como 0. Assim, o Tablestore retorna a contagem de linhas correspondentes sem incluir dados da tabela. |
|
get_total_count |
Indica se deve retornar o número total de linhas que atendem às condições da consulta. O valor padrão é false, o que significa que a contagem total não será retornada. Definir este parâmetro como true pode comprometer o desempenho da consulta. |
|
collapse |
Agrupa os resultados retornados com base na coluna especificada. |
|
query_type |
Tipo de consulta. Para usar a consulta match all, defina este parâmetro como |
|
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 de cada linha correspondente devem ser retornadas. Configure return_type e return_names para este parâmetro.
|
Exemplos
O exemplo a seguir demonstra como usar um índice de pesquisa para obter até 10 registros únicos de palavras-chave na tabela php_sdk_test e retornar dados das colunas col1 e col2.
$request = array(
'table_name' => 'php_sdk_test',
'index_name' => 'php_sdk_test_search_index',
'search_query' => array(
'offset' => 0,
'limit' => 10,
'get_total_count' => true,
'collapse' => array(
'field_name' => 'keyword'
),
'query' => array(
'query_type' => QueryTypeConst::MATCH_ALL_QUERY
),
// 'sort' => array(// Specify a specific sorting method if required.
// array(
// 'field_sort' => array(
// 'field_name' => 'keyword',
// 'order' => SortOrderConst::SORT_ORDER_ASC
// )
// ),
// ),
'token' => null,
),
'columns_to_get' => array(
'return_type' => ColumnReturnTypeConst::RETURN_SPECIFIED,
'return_names' => array('col1', 'col2')
)
);
$response = $otsClient->search($request);
FAQ
Referências
-
Ao consultar dados com um índice de pesquisa, utilize os seguintes métodos: consulta term, consulta terms, consulta match all, consulta match, consulta match phrase, consulta prefix, consulta range, consulta wildcard, consulta Boolean, consulta geo, consulta nested e consulta exists. Combine diferentes métodos para consultar dados em múltiplas dimensões conforme suas necessidades de negócio.
Para ordenar ou paginar as linhas que atendem aos critérios de 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, use o recurso collapse (distinct). Isso garante que dados do tipo especificado apareçam apenas uma vez nos resultados. Para mais informações, consulte Collapse (distinct).
Para analisar dados em uma tabela, como obter valores extremos, soma 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.
Para obter rapidamente todas as linhas correspondentes sem ordenação, chame as operações ParallelScan e ComputeSplits para usar o recurso de varredura paralela. Para mais informações, consulte Varredura paralela.