Tous les produits
Search
Centre de documentation

Tablestore:Requête de plage

Dernière mise à jour :Aug 18, 2026

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

Prérequis

Paramètres

Paramètre

Description

table_name

Nom de la table de données.

index_name

Nom de l'index de recherche.

offset

Position à partir de laquelle la requête actuelle commence.

limit

Nombre maximal de lignes que la requête actuelle doit renvoyer.

Pour interroger uniquement le nombre de lignes correspondant aux conditions de la requête sans récupérer les données spécifiques des lignes, définissez ce paramètre sur 0.

get_total_count

Indique si le nombre total de lignes correspondant aux conditions de la requête doit être renvoyé. La valeur par défaut de ce paramètre est false, ce qui signifie que le nombre total de lignes n'est pas renvoyé.

Si vous définissez ce paramètre sur true, les performances de la requête sont dégradées.

query_type

Type de requête. Pour utiliser une requête de plage, définissez ce paramètre sur QueryTypeConst::RANGE_QUERY.

field_name

Nom du champ à faire correspondre.

range_from

Valeur à partir de laquelle la requête commence.

range_to

Valeur à laquelle la requête se termine.

include_lower

Indique si la valeur du paramètre range_from doit être incluse dans la réponse. La valeur de ce paramètre est de type booléen.

include_upper

Indique si la valeur du paramètre range_to doit être incluse dans la réponse. La valeur de ce paramètre est de type booléen.

sort

Méthode à utiliser pour trier les lignes dans la réponse. Pour plus d'informations, consultez la rubrique Tri et pagination.

columns_to_get

Indique si toutes les colonnes de chaque ligne correspondant aux conditions de la requête doivent être renvoyées. Vous pouvez configurer les champs return_type et column_names pour ce paramètre.

  • Si vous définissez return_type sur ColumnReturnTypeConst::RETURN_SPECIFIED, vous pouvez utiliser return_names pour spécifier les colonnes à renvoyer.

  • Si vous définissez le paramètre return_type sur ColumnReturnTypeConst::RETURN_ALL, toutes les colonnes sont renvoyées.

  • Si vous définissez return_type sur ColumnReturnTypeConst::RETURN_ALL_FROM_INDEX, toutes les colonnes de l'index de recherche sont renvoyées.

  • Si vous définissez le paramètre return_type sur ColumnReturnTypeConst::RETURN_NONE, seules les colonnes de clé primaire sont renvoyées.

Exemples

L'exemple de code suivant montre comment interroger les lignes dont la valeur de la colonne long est supérieure ou égale à 100 mais strictement inférieure à 101. Dans cet exemple, les lignes de la réponse sont triées par ordre croissant en fonction de la valeur de la colonne keyword.

$request = array(
    'table_name' => 'php_sdk_test',
    'index_name' => 'php_sdk_test_search_index',
    'search_query' => array(
        'offset' => 0,
        'limit' => 2,
        'get_total_count' => true,
        'query' => array(
            'query_type' => QueryTypeConst::RANGE_QUERY,
            'query' => array(
                'field_name' => 'long',
                'range_from' => 100,
                'include_lower' => true,
                'range_to' => 101,
                'include_upper' => false
            )
        ),
        'sort' => array(
            array(
                'field_sort' => array(
                    'field_name' => 'keyword',
                    'order' => SortOrderConst::SORT_ORDER_ASC
                )
            ),
        )
    ),
    'columns_to_get' => array(
        'return_type' => ColumnReturnTypeConst::RETURN_SPECIFIED,
        'return_names' => array('double', 'long', 'keyword')
    )
);
$response = $otsClient->search($request);

FAQ

Références

  • Lorsque vous utilisez un index de recherche pour interroger des données, vous pouvez recourir aux méthodes de requête suivantes : requête term, requête terms, requête match all, requête match, requête match phrase, requête prefix, requête de plage, requête wildcard, requête Boolean, requête geo, requête nested et requête exists. Vous pouvez utiliser différentes méthodes de requête pour interroger des données selon plusieurs dimensions en fonction de vos besoins métier.

    Si vous souhaitez trier ou paginer les lignes correspondant aux conditions de la requête, vous pouvez utiliser la fonctionnalité de tri et de pagination. Pour plus d'informations, consultez la rubrique Tri et pagination.

    Si vous souhaitez regrouper l'ensemble des résultats en fonction d'une colonne spécifique, vous pouvez utiliser la fonctionnalité de regroupement (distinct). Ainsi, les données du type spécifié n'apparaissent qu'une seule fois dans les résultats de la requête. Pour plus d'informations, consultez la rubrique Regroupement (distinct).

  • Si vous souhaitez analyser les données d'une table de données, par exemple pour obtenir les valeurs extrêmes, la somme et le nombre total de lignes, vous pouvez effectuer des opérations d'agrégation ou exécuter des instructions SQL. Pour plus d'informations, consultez les rubriques Agrégation et Requête SQL.

  • Si vous souhaitez obtenir rapidement toutes les lignes correspondant aux conditions de la requête sans avoir besoin de les trier, vous pouvez appeler les opérations ParallelScan et ComputeSplits pour utiliser la fonctionnalité d'analyse parallèle. Pour plus d'informations, consultez la rubrique Analyse parallèle.