JSON.ARRLEN - Amazon ElastiCache

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

JSON.ARRLEN

Ruft die Länge der Array-Werte am Pfad ab.

Syntax

JSON.ARRLEN <key> [path]
  • key (erforderlich) — Ein Valkey- oder OSS Redis-Schlüssel des JSON Dokumenttyps.

  • path (optional) — Ein JSON Pfad. Es gilt der Root-Standardwert, falls nicht angegeben.

Ergebnis

Wenn der Pfad eine erweiterte Syntax ist:

  • Array von Ganzzahlen, die die Array-Länge bei jedem Pfad darstellen.

  • Wenn ein Wert kein Array ist, ist der entsprechende Rückgabewert Null.

  • Null, wenn der Dokumentschlüssel nicht vorhanden ist.

Wenn der Pfad eine eingeschränkte Syntax hat:

  • Array von Bulk-Strings. Jedes Element ist ein Schlüsselname im Objekt.

  • Ganzzahl, Array-Länge.

  • Wenn mehrere Objekte ausgewählt sind, gibt der Befehl die Länge des ersten Arrays zurück.

  • WRONGTYPE-Fehler, wenn der Wert im Pfad kein Array ist.

  • WRONGTYPE-Fehler, wenn der Pfad nicht vorhanden ist.

  • Null, wenn der Dokumentschlüssel nicht vorhanden ist.

Beispiele

Erweiterte Pfad-Syntax:

127.0.0.1:6379> JSON.SET k1 . '[[], [\"a\"], [\"a\", \"b\"], [\"a\", \"b\", \"c\"]]' (error) SYNTAXERR Failed to parse JSON string due to syntax error 127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"], ["a", "b", "c"]]' OK 127.0.0.1:6379> JSON.ARRLEN k1 $[*] 1) (integer) 0 2) (integer) 1 3) (integer) 2 4) (integer) 3 127.0.0.1:6379> JSON.SET k2 . '[[], "a", ["a", "b"], ["a", "b", "c"], 4]' OK 127.0.0.1:6379> JSON.ARRLEN k2 $[*] 1) (integer) 0 2) (nil) 3) (integer) 2 4) (integer) 3 5) (nil)

Eingeschränkte Pfad-Syntax:

127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"], ["a", "b", "c"]]' OK 127.0.0.1:6379> JSON.ARRLEN k1 [*] (integer) 0 127.0.0.1:6379> JSON.ARRLEN k1 $[3] 1) (integer) 3 127.0.0.1:6379> JSON.SET k2 . '[[], "a", ["a", "b"], ["a", "b", "c"], 4]' OK 127.0.0.1:6379> JSON.ARRLEN k2 [*] (integer) 0 127.0.0.1:6379> JSON.ARRLEN k2 $[1] 1) (nil) 127.0.0.1:6379> JSON.ARRLEN k2 $[2] 1) (integer) 2