Tous les produits
Search
Centre de documentation

Tablestore:Requête de préfixe

Dernière mise à jour :Aug 18, 2026

Vous pouvez effectuer une requête de préfixe pour interroger les données correspondant au préfixe spécifié. Si le type de la colonne est TEXT, Tablestore tokenize la chaîne et utilise les jetons pour faire correspondre le mot-clé. Une ligne satisfait aux conditions de la requête lorsqu'au moins un des jetons de la ligne correspond au préfixe spécifié.

Prérequis

Paramètres

Paramètre

Description

tableName

Nom de la table de données.

indexName

Nom de l'index de recherche.

offset

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

limit

Nombre maximal de lignes que vous souhaitez que la requête actuelle renvoie.

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

queryType

Type de requête. Définissez ce paramètre sur TableStore.QueryType.PREFIX_QUERY.

fieldName

Nom de la colonne que vous souhaitez interroger.

prefix

Préfixe utilisé pour faire correspondre la valeur de la colonne lors de l'exécution d'une requête de préfixe.

Si le type de la colonne est TEXT, Tablestore tokenize la chaîne et utilise les jetons pour faire correspondre le mot-clé. Une ligne satisfait aux conditions de la requête lorsqu'au moins un des jetons de la ligne correspond au préfixe spécifié.

getTotalCount

Indique s'il faut renvoyer le nombre total de lignes répondant aux conditions de la requête. 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 affectées.

columnToGet

Indique s'il faut renvoyer toutes les colonnes de chaque ligne répondant aux conditions de la requête. Vous pouvez configurer les champs returnType et returnNames pour ce paramètre.

  • Si vous définissez returnType sur TableStore.ColumnReturnType.RETURN_SPECIFIED, vous devez configurer returnNames pour spécifier les colonnes à renvoyer.

  • Si vous définissez le paramètre returnType sur TableStore.ColumnReturnType.RETURN_ALL, toutes les colonnes sont renvoyées.

  • Si vous définissez le paramètre returnType sur TableStore.ColumnReturnType.RETURN_ALL_FROM_INDEX, toutes les colonnes de l'index de recherche sont renvoyées. .

  • Si vous définissez le paramètre returnType sur TableStore.ColumnReturnType.RETURN_NONE, seules les colonnes de clé primaire sont renvoyées.

Exemple

L'exemple de code suivant montre comment interroger les lignes dont le préfixe de la valeur de la colonne Col_Keyword est « hang » :

/**
 * Search the table for rows in which the value of Col_Keyword contains the "hang" prefix, such as "hangzhou". 
 */
client.search({
    tableName: TABLE_NAME,
    indexName: INDEX_NAME,
    searchQuery: {
        offset: 0,
        limit: 10, // To query only the number of rows that meet the query conditions without specific data, set the limit parameter to 0. 
        query: { // Set the query type to TableStore.QueryType.PREFIX_QUERY. 
            queryType: TableStore.QueryType.PREFIX_QUERY,
            query: {
                fieldName: "Col_Keyword",
                prefix: "hang" // Set the prefix to "hang" to match column values such as "hangzhou" or "hangzhoushi". 
            }
        },
        getTotalCount: true // Specify whether to return the total number of rows that meet the query conditions. The default value of this parameter is false, which specifies that the total number of rows that meet the query conditions is not returned. 
    },
    columnToGet: { // Specify the columns that you want to return. You can set the parameter to RETURN_SPECIFIED to return specific columns, RETURN_ALL to return all columns, RETURN_ALL_FROM_INDEX to return all columns in the search index, or RETURN_NONE to return only the primary key columns. 
        returnType: TableStore.ColumnReturnType.RETURN_ALL
    }
}, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', JSON.stringify(data, null, 2));
});

FAQ

FAQ

Références

  • Les types de requêtes suivants sont pris en charge par les index de recherche : requête term, requête terms, requête match all, requête match, requête match phrase, requête de préfixe, requête range, requête wildcard, requête booléenne, requête geo, requête nested, requête vector et requête exists. Vous pouvez sélectionner un type de requête pour interroger les données en fonction de vos besoins métier.

    Si vous souhaitez trier ou paginer les lignes répondant 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 de 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 répondant 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.