Todos los productos
Search
Centro de documentos

Tablestore:Consulta de coincidencia

Última actualización: Sep 03, 2026

Utilice una consulta de coincidencia en el Tablestore SDK for Go para tokenizar el texto de consulta y hacer coincidir los tokens en un campo Text.

Requisitos previos

Instale Tablestore Go SDK e inicialice un cliente.

Descripción

Una consulta de coincidencia tokeniza el texto de consulta mediante el analizador configurado para el campo del índice y combina los tokens según Operator y MinShouldMatch. Utilice esta consulta para búsquedas de texto completo en campos Text.

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

A continuación se muestra un ejemplo que consulta datos y devuelve hasta 10 filas, además del número total de filas coincidentes.

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

query := &search.MatchQuery{FieldName: "title", Text: "go search", Operator: search.QueryOperator_OR.Enum()}
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 la 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 se ha configurado el enrutamiento personalizado.

TimeoutMs (opcional)

*int32

El tiempo de espera de la solicitud en milisegundos.

Configuración de la 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

Especifica la condición de consulta.

SetOffset (opcional)

int32

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

SetLimit (opcional)

int32

Especifica 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

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

SetCollapse (opcional)

*search.Collapse

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

SetSort (opcional)

*search.Sort

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

SetGetTotalCount (opcional)

bool

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

SetToken (opcional)

[]byte

Especifica el valor NextToken devuelto por 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 utilice paginación basada en token.

SetSearchFilter (opcional)

*search.SearchFilter

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

Aggregation (opcional)

...search.Aggregation

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

GroupBy (opcional)

...search.GroupBy

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

Condición de consulta

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

Nombre

Tipo

Descripción

FieldName (obligatorio)

string

El nombre del campo Text que se va a consultar.

Text (obligatorio)

string

El texto de consulta, que se tokeniza mediante el analizador configurado para el campo.

Operator (opcional)

*search.QueryOperator

El operador lógico entre tokens. Valores válidos: QueryOperator_AND y QueryOperator_OR. Valor predeterminado: QueryOperator_OR.

MinShouldMatch (opcional)

*string

El número o porcentaje mínimo de tokens que deben coincidir, como 2 o 75%. Utilice este parámetro con QueryOperator_OR.

Weight (opcional)

*float32

El peso de relevancia de la condición de consulta.

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 que se van a devolver. Este parámetro solo tiene efecto cuando ReturnAll y ReturnAllFromIndex son ambos false.

ReturnAll (opcional)

bool

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

ReturnAllFromIndex (opcional)

bool

Especifica 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 del negocio.

Nombre

Tipo

Descripción

TotalCount

int64

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

Rows

[]*tablestore.Row

Las filas devueltas por 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 utilice 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.