Todos los productos
Search
Centro de documentos

Tablestore:Consulta de términos

Última actualización: Sep 03, 2026

Use una consulta de términos en el Tablestore SDK for Go para coincidir con cualquiera de varios valores de consulta exactos.

Requisitos previos

Instale Tablestore Go SDK e inicialice un cliente.

Descripción

Una consulta de términos especifica varios valores para el mismo campo. Una fila coincide si el valor del campo o un token coincide exactamente con cualquier valor de la consulta. Los valores se unen mediante el operador OR y no se tokenizan.

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

El siguiente ejemplo consulta datos y devuelve hasta 10 filas, además del número total de filas coincidentes.

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

query := &search.TermsQuery{FieldName: "category", Terms: []interface{}{ "books", "music" }}
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

Solicitud de consulta

request es de tipo tablestore.SearchRequest y contiene los siguientes parámetros.

Nombre

Tipo

Descripción

TableName (obligatorio)

string

El nombre de la tabla de datos.

IndexName (obligatorio)

string

El nombre del índice de búsqueda.

SearchQuery (obligatorio)

search.SearchQuery

La condición de consulta y las configuraciones comunes de consulta.

ColumnsToGet (opcional)

*tablestore.ColumnsToGet

La configuración de columnas a devolver. Si se omite este parámetro, solo se devuelven las columnas de clave principal.

RoutingValues (opcional)

[]*tablestore.PrimaryKey

Valores de clave principal para campos de enrutamiento personalizado. Omita este parámetro si no ha configurado el enrutamiento personalizado.

TimeoutMs (opcional)

*int32

El periodo de tiempo de espera de la solicitud en milisegundos.

Configuración de consulta

Cree una configuración de consulta al llamar a search.NewSearchQuery() y configúrela mediante los siguientes métodos.

Nombre

Tipo

Descripción

SetQuery (obligatorio)

search.Query

Especifique la condición de consulta.

SetOffset (opcional)

int32

Especifique la posición inicial. Valor predeterminado: 0. Para la paginación basada en desplazamiento, Offset + Limit no puede exceder 100,000.

SetLimit (opcional)

int32

Especifique el número máximo de filas a devolver. Valor predeterminado: 10. Valor máximo: 100. Un valor de 0 no devuelve ninguna fila.

SetHighlight (opcional)

*search.Highlight

Configure resúmenes y resaltado para campos Text. Para más información, consulte Summary and highlighting.

SetCollapse (opcional)

*search.Collapse

Colapsa los resultados de la consulta. Para más información, consulte Collapse query results.

SetSort (opcional)

*search.Sort

Especifique el orden de clasificación de los resultados. Para más información, consulte Sort and paginate results.

SetGetTotalCount (opcional)

bool

Especifique si se deben contar todas las filas coincidentes. Valor predeterminado: false.

SetToken (opcional)

[]byte

Especifique el valor NextToken que devuelve la respuesta anterior. Este método borra Sort porque el token contiene las condiciones de clasificación de la página anterior. No especifique Offset cuando use paginación basada en tokens.

SetSearchFilter (opcional)

*search.SearchFilter

Aplica un filtro posterior a la consulta. Para más información, consulte Use post-query filters.

Aggregation (opcional)

...search.Aggregation

Configure agregaciones. Para más información, consulte Aggregation.

GroupBy (opcional)

...search.GroupBy

Configure agrupaciones. Para más información, consulte Aggregation.

Condición de consulta

La consulta es de tipo search.TermsQuery y contiene los siguientes parámetros.

Nombre

Tipo

Descripción

FieldName (obligatorio)

string

El nombre del campo de índice por consultar.

Terms (obligatorio)

[]interface{}

Los valores de consulta, que se unen mediante el operador OR.

Columnas a devolver

request.ColumnsToGet es de tipo tablestore.ColumnsToGet y contiene los siguientes parámetros.

Nombre

Tipo

Descripción

Columns (opcional)

[]string

Las columnas de atributos por devolver. Este parámetro solo surte efecto cuando ReturnAll y ReturnAllFromIndex son ambos false.

ReturnAll (opcional)

bool

Especifique si se deben devolver todas las columnas de atributos de la tabla de datos. Valor predeterminado: false.

ReturnAllFromIndex (opcional)

bool

Especifique si se deben devolver todas las columnas de atributos indexadas. Valor predeterminado: false. No establezca este parámetro y ReturnAll en true al mismo tiempo.

Respuesta

El método Search devuelve un valor tablestore.SearchResponse. La siguiente tabla describe los campos principales.

Nombre

Tipo

Descripción

TotalCount

int64

El número total de filas coincidentes. El valor depende de SetGetTotalCount.

Rows

[]*tablestore.Row

Las filas que devuelve la consulta actual. El número no excede el valor especificado por SetLimit.

SearchHits

[]*tablestore.SearchHit

Los aciertos de búsqueda. Lea este campo cuando use resaltado, aciertos internos anidados o puntuaciones de relevancia.

NextToken

[]byte

El token para la siguiente página. Si el valor no está vacío, páselo a la siguiente consulta.

IsAllSuccess

bool

Indica si se consultaron todas las particiones del índice. Si el valor es false, se devuelven resultados parciales y TotalCount puede ser menor que el número real de filas coincidentes.

AggregationResults

search.AggregationResults

Los resultados de la agregación.

GroupByResults

search.GroupByResults

Los resultados de la agrupación.