Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

QueryFilter (héritage)

Mode de mise au point
QueryFilter (héritage) - Amazon DynamoDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Note

Dans la mesure du possible, nous vous recommandons d'utiliser les nouveaux paramètres d'expression plutôt que ces paramètres hérités. Pour de plus amples informations, veuillez consulter Utilisation d'expressions dans DynamoDB. Pour obtenir des informations précises sur le nouveau paramètre qui remplace celui-ci, utilisez FilterExpressionplutôt..

Dans une opération Query, le paramètre conditionnel hérité QueryFilter est une condition qui évalue les résultats de la requête après lecture des éléments et renvoie uniquement les valeurs souhaitées.

Ce paramètre ne prend pas en charge les attributs de type Liste ou Mappage.

Note

Un QueryFilter est appliqué après lecture des éléments. Le processus de filtrage ne consomme pas d'unités de capacité de lecture supplémentaires.

Si vous spécifiez plusieurs conditions dans le mappage QueryFilter, par défaut, le résultat de toutes les conditions doit être true. En d'autres termes, les conditions sont combinées à l'aide de l'ANDopérateur. Vous pouvez également utiliser le paramètre ConditionalOperator (héritage) pour dissocier les conditions à l'aide de l'opérateur logique OR (OU). Dans ce cas, au moins une des conditions doit avoir la valeur vrai, plutôt que toutes.

Notez que QueryFilter n'autorise pas les attributs de clé. Vous ne pouvez pas définir de condition de filtre sur une clé de partition ou une clé de tri.

Chaque élément QueryFilter se compose d'un nom d'attribut à comparer, ainsi que de ce qui suit :

  • AttributeValueList - Une ou plusieurs valeurs à évaluer par rapport à l'attribut fourni. Le nombre de valeurs dans la liste dépend de l'opérateur spécifié dans ComparisonOperator.

    Pour le type Nombre, les comparaisons de valeurs sont numériques.

    Les comparaisons de valeurs de chaînes supérieures, égales ou inférieures à sont basées sur le codage binaire UTF -8. Par exemple, a est supérieur à A, et a est supérieur à B.

    Pour le type Binaire, DynamoDB traite chaque octet des données binaires comme non signé lors de la comparaison de valeurs binaires.

    Pour plus d'informations sur la spécification des types de données dansJSON, consultezDynamoDB de bas niveau API.

  • ComparisonOperator - Comparateur pour l'évaluation d'attributs. Par exemple : égal à, supérieur à, et inférieur à.

    Les opérateurs de comparaison pris en charge sont les suivants :

    EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEEN

Utiliser à FilterExpressionla place — Exemple

Supposons que vous vouliez interroger la table Music et appliquer une condition aux éléments correspondants. Vous pourriez utiliser une requête Query avec un paramètre QueryFilter comme dans cet exemple d' AWS CLI  :

aws dynamodb query \ --table-name Music \ --key-conditions '{ "Artist": { "ComparisonOperator": "EQ", "AttributeValueList": [ {"S": "No One You Know"} ] } }' \ --query-filter '{ "Price": { "ComparisonOperator": "GT", "AttributeValueList": [ {"N": "1.00"} ] } }'

Vous pouvez utiliser FilterExpression à la place :

aws dynamodb query \ --table-name Music \ --key-condition-expression 'Artist = :a' \ --filter-expression 'Price > :p' \ --expression-attribute-values '{ ":p": {"N":"1.00"}, ":a": {"S":"No One You Know"} }'

Rubrique suivante :

ScanFilter

Rubrique précédente :

KeyConditions
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.