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.
Référence concernant les opérateurs et fonctions de comparaison
Cette section traite des fonctions et mots-clés intégrés pour l'écriture des expressions de filtre et de condition dans Amazon DynamoDB. Pour obtenir des informations plus détaillées sur les fonctions et la programmation avec DynamoDB, consultez Programmation avec DynamoDB et les kits de développement logiciel AWS et le guide de référence de l'API DynamoDB.
Rubriques
Syntaxe des expressions de filtre et de condition
Dans le résumé de syntaxe suivant, un opérande
peut avoir l'une des valeurs suivantes :
-
Nom d'attribut de niveau supérieur, tel que
Id
,Title
,Description
ouProductCategory
-
Chemin d'accès du document qui fait référence à un attribut imbriqué
condition-expression ::=
operand
comparatoroperand
|operand
BETWEENoperand
ANDoperand
|operand
IN (operand
(','operand
(, ...) )) | function |condition
ANDcondition
|condition
ORcondition
| NOTcondition
| (condition
) comparator ::= = | <> | < | <= | > | >= function ::= attribute_exists (path
) | attribute_not_exists (path
) | attribute_type (path
,type
) | begins_with (path
,substr
) | contains (path
,operand
) | size (path
)
Comparaisons
Utilisez ces comparateurs pour comparer un opérande par rapport à une plage de valeurs, ou une liste énumérée de valeurs :
-
– True sia
=b
a
est égal àb
-
– True sia
<>b
a
n'est pas égal àb
-
– True sia
<b
a
est inférieur àb
. -
– True sia
<=b
a
est inférieur ou égal àb
. -
– True sia
>b
a
est supérieur àb
. -
– True sia
>=b
a
est supérieur ou égal àb
.
Utilisez les mots clés BETWEEN
et IN
pour comparer un opérande par rapport à une plage de valeurs, ou une liste énumérée de valeurs.
-
– True sia
BETWEENb
ANDc
a
est supérieur ou égal àb
, et inférieur ou égal àc
. -
– True sia
IN (b
,c
,d
)a
est égal à n'importe quelle valeur figurant dans la liste, par exemple,b
,c
oud
. La liste peut contenir jusqu'à 100 valeurs séparées par des virgules.
Fonctions
Utilisez les fonctions suivantes pour déterminer si un attribut existe dans un élément, ou pour évaluer la valeur d'un attribut. Ces noms sont sensibles à la casse. Pour un attribut imbriqué, vous devez fournir le chemin d'accès au document complet.
Fonction | Description |
---|---|
|
True si l'élément contienne l'attribut spécifié par Exemple : Vérifier si un élément de la table
|
|
True si l'attribut spécifié par Exemple : Vérifier si un élément possède un attribut
|
|
True si l'attribut à l'emplacement spécifié est d'un type de données particulier. Le paramètre
Vous devez utiliser une valeur d'attribut expression pour le paramètre Exemple : Vérifier si l'attribut
Vous devez utiliser une valeur d'attribut expression pour le paramètre |
|
True si l'attribut spécifié par Exemple : Vérifier si les tout premiers caractères de l'URL de l'image vue avant sont
La valeur d'attribut expression |
|
True si l'attribut spécifié par
Si l'attribut spécifié par Le chemin et l'opérande doivent être distincts. Autrement dit, Exemple : Vérifier si l'attribut
La valeur d'attribut expression Exemple : Vérifier si le produit est disponible en rouge.
La valeur d'attribut expression |
|
Renvoie un nombre qui représente la taille d'un attribut. Voici les types de données valides à utiliser avec Si l'attribut est de type Exemple : Vérifier si la chaîne
Si l'attribut est de type Exemple : supposez que l'élément
Si l'attribut est un type de données Exemple : Vérifier si le produit est disponible dans plusieurs couleurs. La valeur d'attribut expression
Si l'attribut est de type Exemple : Vérifier si le nombre de révisions
|
Evaluations logiques
Utilisez les mots clés AND
, OR
et NOT
pour effectuer les évaluations logiques. Dans la liste suivante, a
et b
représentent les conditions à évaluer.
-
– True sia
ANDb
a
etb
ont tous deux la valeur true. -
– True sia
ORb
a
oub
(ou les deux) ont la valeur true. -
NOT
– True sia
a
a la valeur false. False sia
a la valeur true.
Voici un exemple de code avec AND dans une opération.
dynamodb-local (*)> select * from exprtest where a > 3 and a < 5;
Parenthèses
Utilisez les parenthèses pour modifier la priorité d'une évaluation logique. Par exemple, supposons que les conditions a
et b
sont true, et que cette condition c
a la valeur false. L'expression suivante a la valeur true :
-
a
ORb
ANDc
Toutefois, si vous placez une condition entre parenthèses, elle est évaluée en premier. Par exemple, l'expression suivante a la valeur false :
-
(
a
ORb
) ANDc
Note
Vous pouvez imbriquer les parenthèses dans une expression. Les parenthèses les plus intérieures sont évaluées en premier.
Voici un exemple de code avec des parenthèses dans une évaluation logique.
dynamodb-local (*)> select * from exprtest where attribute_type(b, string) or ( a = 5 and c = “coffee”);
Priorité des conditions
DynamoDB évalue les conditions de gauche à droite en suivant les règles de priorité suivantes :
-
= <> < <= > >=
-
IN
-
BETWEEN
-
attribute_exists attribute_not_exists begins_with contains
-
Parenthèses
-
NOT
-
AND
-
OR