Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
JSON.SET
Imposta JSON i valori sul percorso.
Se il percorso richiede un membro oggetto:
Se l'elemento principale non esiste, il comando restituisce un NONEXISTENT errore.
Se l'elemento padre esiste ma non è un oggetto, il comando restituisceERROR.
Se l'elemento padre esiste ed è un oggetto:
Se il membro non esiste, un nuovo membro verrà accodato all'oggetto padre se e solo se l'oggetto padre è l'ultimo figlio nel percorso. In caso contrario, il comando restituisce un NONEXISTENT errore.
Se il membro esiste, il relativo valore verrà sostituito dal JSON valore.
Se il percorso richiede un indice di array:
Se l'elemento principale non esiste, il comando restituisce un NONEXISTENT errore.
Se l'elemento principale esiste ma non è un array, il comando restituisceERROR.
Se l'elemento principale esiste ma l'indice non è compreso nei limiti, il comando restituisce un OUTOFBOUNDARIES errore.
Se l'elemento principale esiste e l'indice è valido, l'elemento verrà sostituito dal nuovo JSON valore.
Se il percorso richiede un oggetto o un array, il valore (oggetto o array) verrà sostituito dal nuovo JSON valore.
Sintassi
JSON.SET <key> <path> <json> [NX | XX]
[NX | XX] Dove è possibile avere 0 o 1 identificatori [NX | XX].
key (obbligatorio) — Una chiave Valkey o Redis di OSS tipo JSON documento.
path (obbligatorio) — Un JSON percorso. Per una nuova chiave, il JSON percorso deve essere la radice «.».
NX (opzionale): se il percorso è la radice, imposta il valore solo se la chiave non esiste. Inserire, cioè, un nuovo documento. Se il percorso non è la radice, impostare il valore solo se il percorso non esiste. Inserire, cioè, un valore nel documento.
XX (opzionale): se il percorso è la radice, imposta il valore solo se la chiave esiste. Sostituire, cioè, il documento esistente. Se il percorso non è la radice, impostare il valore solo se il percorso esiste. Aggiornare, cioè, il valore esistente.
Valori restituiti
Stringa semplice 'OK' se l’esito è positivo.
-
Null se la condizione NX o XX non viene soddisfatta.
Examples (Esempi)
Sintassi avanzata del percorso:
127.0.0.1:6379> JSON.SET k1 . '{"a":{"a":1, "b":2, "c":3}}' OK 127.0.0.1:6379> JSON.SET k1 $.a.* '0' OK 127.0.0.1:6379> JSON.GET k1 "{\"a\":{\"a\":0,\"b\":0,\"c\":0}}" 127.0.0.1:6379> JSON.SET k2 . '{"a": [1,2,3,4,5]}' OK 127.0.0.1:6379> JSON.SET k2 $.a[*] '0' OK 127.0.0.1:6379> JSON.GET k2 "{\"a\":[0,0,0,0,0]}"
Sintassi limitata del percorso:
127.0.0.1:6379> JSON.SET k1 . '{"c":{"a":1, "b":2}, "e": [1,2,3,4,5]}' OK 127.0.0.1:6379> JSON.SET k1 .c.a '0' OK 127.0.0.1:6379> JSON.GET k1 "{\"c\":{\"a\":0,\"b\":2},\"e\":[1,2,3,4,5]}" 127.0.0.1:6379> JSON.SET k1 .e[-1] '0' OK 127.0.0.1:6379> JSON.GET k1 "{\"c\":{\"a\":0,\"b\":2},\"e\":[1,2,3,4,0]}" 127.0.0.1:6379> JSON.SET k1 .e[5] '0' (error) OUTOFBOUNDARIES Array index is out of bounds