JSON.STRAPPEND - Amazon ElastiCache (Redis OSS)

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.

JSON.STRAPPEND

Ajoute une chaîne aux chaînes JSON au niveau du chemin.

Syntaxe

JSON.STRAPPEND <key> [path] <json_string>
  • clé (obligatoire) — Une clé Redis OSS de type document JSON.

  • path (facultatif) : chemin JSON. Par défaut, il s'agit de la racine si elle n'est pas fournie.

  • json_string (obligatoire) – La représentation JSON d'une chaîne. Notez qu'une chaîne JSON doit être entre guillemets. Par exemple : « "exemple de chaîne" ».

Retour

Si le chemin est une syntaxe améliorée :

  • Tableau d'entiers qui représentent la nouvelle longueur de la chaîne au niveau de chaque chemin.

  • Si une valeur au niveau du chemin n'est pas une chaîne, sa valeur de retour correspondante est nulle.

  • Erreur SYNTAXERR si l'argument json en entrée n'est pas une chaîne JSON valide.

  • Erreur NONEXISTENT si le chemin n'existe pas.

Si le chemin est une syntaxe restreinte :

  • Entier, la nouvelle longueur de la chaîne.

  • Si plusieurs valeurs de chaîne sont sélectionnées, la commande renvoie la nouvelle longueur de la dernière chaîne mise à jour.

  • Erreur WRONGTYPE si la valeur au niveau du chemin n'est pas une chaîne.

  • Erreur WRONGTYPE si l'argument json en entrée n'est pas une chaîne JSON valide.

  • Erreur NONEXISTENT si le chemin n'existe pas.

Exemples

Syntaxe de chemin améliorée :

127.0.0.1:6379> JSON.SET k1 $ '{"a":{"a":"a"}, "b":{"a":"a", "b":1}, "c":{"a":"a", "b":"bb"}, "d":{"a":1, "b":"b", "c":3}}' OK 127.0.0.1:6379> JSON.STRAPPEND k1 $.a.a '"a"' 1) (integer) 2 127.0.0.1:6379> JSON.STRAPPEND k1 $.a.* '"a"' 1) (integer) 3 127.0.0.1:6379> JSON.STRAPPEND k1 $.b.* '"a"' 1) (integer) 2 2) (nil) 127.0.0.1:6379> JSON.STRAPPEND k1 $.c.* '"a"' 1) (integer) 2 2) (integer) 3 127.0.0.1:6379> JSON.STRAPPEND k1 $.c.b '"a"' 1) (integer) 4 127.0.0.1:6379> JSON.STRAPPEND k1 $.d.* '"a"' 1) (nil) 2) (integer) 2 3) (nil)

Syntaxe de chemin restreinte :

127.0.0.1:6379> JSON.SET k1 . '{"a":{"a":"a"}, "b":{"a":"a", "b":1}, "c":{"a":"a", "b":"bb"}, "d":{"a":1, "b":"b", "c":3}}' OK 127.0.0.1:6379> JSON.STRAPPEND k1 .a.a '"a"' (integer) 2 127.0.0.1:6379> JSON.STRAPPEND k1 .a.* '"a"' (integer) 3 127.0.0.1:6379> JSON.STRAPPEND k1 .b.* '"a"' (integer) 2 127.0.0.1:6379> JSON.STRAPPEND k1 .c.* '"a"' (integer) 3 127.0.0.1:6379> JSON.STRAPPEND k1 .c.b '"a"' (integer) 4 127.0.0.1:6379> JSON.STRAPPEND k1 .d.* '"a"' (integer) 2