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 do OTSClient inicializada. Para mais informações, consulte Inicializar uma instância do 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 índices de pesquisa.
Parâmetros
|
Parâmetro |
Descrição |
|
TableName |
Nome da tabela de dados. |
|
IndexName |
Nome do índice de pesquisa. |
|
Query |
Tipo da consulta. Defina o tipo de consulta como MatchAllQuery. |
|
Limit |
Número máximo de linhas a retornar na consulta. Para consultar apenas o número de linhas que atendem às condições sem retornar dados específicos, defina Limit como 0. |
|
GetTotalCount |
Indica se o sistema deve retornar o número total de linhas correspondentes às condições da consulta. O valor padrão é false, ou seja, a contagem total não é retornada. Definir este parâmetro como true compromete o desempenho da consulta. |
|
ColumnsToGet |
Determina se todas as colunas de cada linha correspondente devem ser retornadas. Por padrão, o parâmetro ReturnAll é definido como false, indicando que nem todas as colunas são retornadas. Quando ReturnAll é false, use o parâmetro Columns para especificar as colunas desejadas. Se você não especificar o parâmetro Columns, apenas as colunas de chave primária serão retornadas. Se você definir o parâmetro ReturnAll como true, todas as colunas das linhas correspondentes serão retornadas. |
Exemplos
O código de exemplo a seguir demonstra como consultar o número total de linhas em uma tabela:
/**
* Perform a match all query to query the total number of rows in a table.
*/
func MatchAllQuery(client *tablestore.TableStoreClient, tableName string, indexName string) {
searchRequest := &tablestore.SearchRequest{}
searchRequest.SetTableName(tableName)
searchRequest.SetIndexName(indexName)
query := &search.MatchAllQuery{} // Set the query type to MatchAllQuery.
searchQuery := search.NewSearchQuery()
searchQuery.SetQuery(query)
searchQuery.SetGetTotalCount(true)
searchQuery.SetLimit(0) // Set the Limit parameter to 0, which specifies that the query does not return specific data rows.
searchRequest.SetSearchQuery(searchQuery)
searchResponse, err := client.Search(searchRequest)
if err != nil { // Check if an error occurs.
fmt.Printf("%#v", err)
return
}
fmt.Println("IsAllSuccess: ", searchResponse.IsAllSuccess)
fmt.Println("TotalCount: ", searchResponse.TotalCount) // Display the total number of rows in the table.
}
Perguntas frequentes
Referências
Referências
-
Ao usar um índice de pesquisa para consultar dados, utilize os seguintes métodos: consulta term, consulta terms, consulta match all, consulta match, consulta match phrase, consulta prefix, consulta range, consulta wildcard, consulta geo, consulta Boolean, consulta KNN vector, consulta nested e consulta exists. Esses métodos permitem consultar dados em múltiplas dimensões conforme suas necessidades de negócio.
Use os recursos de ordenação e paginação para classificar ou paginar as linhas que atendem às condições da consulta. Para mais informações, consulte Ordenação e paginação.
Aplique o recurso de collapse (distinct) para agrupar o conjunto de resultados com base em uma coluna específica. Assim, dados do tipo especificado aparecem apenas uma vez nos resultados da consulta. Para mais informações, consulte Collapse (deduplicação).
Para analisar dados em uma tabela de dados, use o recurso de agregação da operação Search ou execute instruções SQL. É possível obter valores mínimos e máximos, somas e o número total de linhas, por exemplo. Para mais informações, consulte Agregação e Consulta SQL.
Caso precise obter todas as linhas correspondentes sem a necessidade de ordená-las, chame as operações ParallelScan e ComputeSplits para utilizar o recurso de varredura paralela. Para mais informações, consulte Realizar uma varredura paralela.