Tous les produits
Search
Centre de documentation

Tablestore:Requête de plage

Dernière mise à jour :Aug 08, 2026

Effectuez une requête de plage pour interroger les données situées dans la plage spécifiée. Si le type d'un champ est TEXT, ses valeurs sont tokenisées. Une ligne satisfait aux conditions de la requête lorsqu'au moins un de ses jetons correspond à la plage de requête.

Prérequis

Paramètres

Parameter

Description

TableName

Nom du tableau de données.

IndexName

Nom de l'index de recherche.

Query

Type de requête. Définissez le type de requête sur RangeQuery.

FieldName

Nom du champ à faire correspondre.

From

Valeur de début de la requête.

Utilisez GT ou GTE pour spécifier une plage. GT indique que les valeurs de la plage sont supérieures à la valeur spécifiée. GTE indique que les valeurs de la plage sont supérieures ou égales à la valeur spécifiée.

To

Valeur de fin de la requête.

Utilisez LT ou LTE pour spécifier une plage. LT indique que les valeurs de la plage sont inférieures à la valeur spécifiée. LTE indique que les valeurs de la plage sont inférieures ou égales à la valeur spécifiée.

IncludeLower

Indique si la valeur du paramètre From doit être incluse dans la réponse. Ce paramètre est de type BOOLEAN.

IncludeUpper

Indique si la valeur du paramètre To doit être incluse dans la réponse. Ce paramètre est de type BOOLEAN.

Sort

Méthode de tri. Pour plus d'informations, consultez Effectuer un tri et une pagination.

ColumnsToGet

Indique s'il faut retourner toutes les colonnes de chaque ligne satisfaisant aux conditions de la requête. Vous pouvez spécifier les paramètres ReturnAll et Columns.

Par défaut, le paramètre ReturnAll est défini sur false, ce qui signifie que toutes les colonnes ne sont pas retournées. Si le paramètre ReturnAll est défini sur false, utilisez le paramètre Columns pour spécifier les colonnes à retourner. Si vous ne spécifiez pas le paramètre Columns, seules les colonnes de clé primaire sont retournées.

Si vous définissez ReturnAll sur true, toutes les colonnes sont retournées.

Exemple de code

L'exemple de code suivant montre comment interroger les lignes dont la valeur de Col_Long est supérieure à 3. Tablestore trie les résultats de la requête en fonction de la valeur de la colonne Col_Long par ordre décroissant.

/**
 * Query the rows in which the value of the Col_Long column is greater than 3 in a table. Tablestore sorts the query results based on the value of the Col_Long column in descending order. 
 */
func RangeQuery(client *tablestore.TableStoreClient, tableName string, indexName string) {
    searchRequest := &tablestore.SearchRequest{}
    searchRequest.SetTableName(tableName)
    searchRequest.SetIndexName(indexName)
    searchQuery := search.NewSearchQuery()
    rangeQuery := &search.RangeQuery{} // Set the query type to RangeQuery. 
    rangeQuery.FieldName = "Col_Long" // Specify the name of the column that you want to query.
    rangeQuery.GT(3) // Specify the range of the column value, which is greater than 3. 
    searchQuery.SetQuery(rangeQuery)
    // Sort the query results based on the value of the Col_Long column in descending order. 
    searchQuery.SetSort(&search.Sort{
        []search.Sorter{
            &search.FieldSort{
                FieldName: "Col_Long",
                Order:     search.SortOrder_DESC.Enum(),
            },
        },
    })
    searchRequest.SetSearchQuery(searchQuery)
    searchRequest.SetColumnsToGet(&tablestore.ColumnsToGet{
        ReturnAll:true,
    })
    searchResponse, err := client.Search(searchRequest)
    if err != nil {
        fmt.Printf("%#v", err)
        return
    }
    fmt.Println("IsAllSuccess: ", searchResponse.IsAllSuccess) // Check whether all rows that meet the query conditions are returned. 
    fmt.Println("RowCount: ", len(searchResponse.Rows))
    for _, row := range searchResponse.Rows {
        jsonBody, err := json.Marshal(row)
        if err != nil {
            panic(err)
        }
        fmt.Println("Row: ", string(jsonBody))
    }
}

FAQ

Références