Todos os produtos
Search
Central de documentação

Tablestore:Prefix query

Última atualização: Oct 09, 2026

Use uma consulta por prefixo no Tablestore Go SDK para localizar valores que comecem com um prefixo especificado.

Pré-requisitos

Instale o Tablestore Go SDK e inicialize o cliente.

Descrição

Uma consulta por prefixo corresponde a valores que começam com o prefixo especificado. Para um campo Text, a consulta se aplica aos termos tokenizados em vez da string original completa. A correspondência diferencia maiúsculas de minúsculas.

func (client *tablestore.TableStoreClient) Search(request *tablestore.SearchRequest) (*tablestore.SearchResponse, error)

O exemplo a seguir consulta dados e retorna até 10 linhas, além do número total de linhas correspondentes.

tableName := "example_table"
indexName := "example_index"

query := &search.PrefixQuery{FieldName: "category", Prefix: "book-"}
searchQuery := search.NewSearchQuery().
    SetQuery(query).
    SetLimit(10).
    SetGetTotalCount(true)

response, err := client.Search(&tablestore.SearchRequest{
    TableName:   tableName,
    IndexName:   indexName,
    SearchQuery: searchQuery,
    ColumnsToGet: &tablestore.ColumnsToGet{
        ReturnAllFromIndex: true,
    },
})
if err != nil {
    log.Fatal(err)
}

fmt.Println(response.TotalCount)
fmt.Println(response.Rows)

Parâmetros

Solicitação de consulta

request é do tipo tablestore.SearchRequest e contém os seguintes parâmetros.

Nome

Tipo

Descrição

TableName (obrigatório)

string

O nome da tabela de dados.

IndexName (obrigatório)

string

O nome do índice de pesquisa.

SearchQuery (obrigatório)

search.SearchQuery

A condição de consulta e as configurações comuns de consulta.

ColumnsToGet (opcional)

*tablestore.ColumnsToGet

A configuração das colunas de retorno. Se você omitir este parâmetro, o sistema retornará apenas as colunas de chave primária.

RoutingValues (opcional)

[]*tablestore.PrimaryKey

Valores de chave primária para campos de roteamento personalizado. Omita este parâmetro se o roteamento personalizado não estiver configurado.

TimeoutMs (opcional)

*int32

O tempo limite da solicitação em milissegundos.

Configuração de consulta

Crie uma configuração de consulta chamando search.NewSearchQuery() e configure-a usando os métodos a seguir.

Nome

Tipo

Descrição

SetQuery (obrigatório)

search.Query

Especifique a condição de consulta.

SetOffset (opcional)

int32

Defina a posição inicial. Valor padrão: 0. Para paginação baseada em offset, a soma de Offset + Limit não pode exceder 100.000.

SetLimit (opcional)

int32

Defina o número máximo de linhas a serem retornadas. Valor padrão: 10. Valor máximo: 100. O valor 0 não retorna nenhuma linha.

SetHighlight (opcional)

*search.Highlight

Configure resumos e realce para campos Text. Para mais informações, acesse Summary and highlighting.

SetCollapse (opcional)

*search.Collapse

Agrupe os resultados da consulta. Para mais informações, acesse Collapse query results.

SetSort (opcional)

*search.Sort

Especifique a ordem de classificação dos resultados. Para mais informações, acesse Sort and paginate results.

SetGetTotalCount (opcional)

bool

Defina se o sistema deve contar todas as linhas correspondentes. Valor padrão: false.

SetToken (opcional)

[]byte

Especifique o valor NextToken retornado pela resposta anterior. Este método limpa o Sort porque o token contém as condições de classificação da página anterior. Não especifique Offset ao usar a paginação baseada em token.

SetSearchFilter (opcional)

*search.SearchFilter

Aplique um filtro pós-consulta. Para mais informações, acesse Use post-query filters.

Aggregation (opcional)

...search.Aggregation

Configure agregações. Para mais informações, acesse Aggregation.

GroupBy (opcional)

...search.GroupBy

Configure agrupamentos. Para mais informações, acesse Aggregation.

Condição de consulta

A consulta é do tipo search.PrefixQuery e contém os seguintes parâmetros.

Nome

Tipo

Descrição

FieldName (obrigatório)

string

O nome do campo de índice a ser consultado.

Prefix (obrigatório)

string

O prefixo a ser correspondido.

Colunas a serem retornadas

request.ColumnsToGet é do tipo tablestore.ColumnsToGet e contém os seguintes parâmetros.

Nome

Tipo

Descrição

Columns (opcional)

[]string

As colunas de atributo a serem retornadas. Este parâmetro só tem efeito quando ReturnAll e ReturnAllFromIndex forem ambos false.

ReturnAll (opcional)

bool

Defina se o sistema deve retornar todas as colunas de atributo na tabela de dados. Valor padrão: false.

ReturnAllFromIndex (opcional)

bool

Defina se o sistema deve retornar todas as colunas de atributo indexadas. Valor padrão: false. Não defina este parâmetro e ReturnAll como true simultaneamente.

Resposta

O método Search retorna um valor tablestore.SearchResponse. A tabela a seguir descreve os principais campos de negócio.

Nome

Tipo

Descrição

TotalCount

int64

O número total de linhas correspondentes. O valor depende de SetGetTotalCount.

Rows

[]*tablestore.Row

As linhas retornadas pela consulta atual. A quantidade não excede o valor definido por SetLimit.

SearchHits

[]*tablestore.SearchHit

Os acertos da pesquisa. Leia este campo ao usar realce, inner hits aninhados ou pontuações de relevância.

NextToken

[]byte

O token para a próxima página. Se o valor não estiver vazio, passe-o para a próxima consulta.

IsAllSuccess

bool

Indica se o sistema consultou todas as partições do índice. Se o valor for false, o sistema retornará resultados parciais e o TotalCount poderá ser menor que o número real de linhas correspondentes.

AggregationResults

search.AggregationResults

Os resultados da agregação.

GroupByResults

search.GroupByResults

Os resultados do agrupamento.