Skip to content

Latest commit

 

History

History
58 lines (36 loc) · 1.75 KB

json.mset.md

File metadata and controls

58 lines (36 loc) · 1.75 KB

Set or update one or more JSON values according to the specified key-path-value triplets

JSON.MSET is atomic, hence, all given additions or updates are either applied or not. It is not possible for clients to see that some of the keys were updated while others are unchanged.

A JSON value is a hierarchical structure. If you change a value in a specific path - nested values are affected.

Examples

Required arguments

key

is key to modify.

path

is JSONPath to specify. For new Redis keys the path must be the root. For existing keys, when the entire path exists, the value that it contains is replaced with the json value. For existing keys, when the path exists, except for the last element, a new child is added with the json value.

value

is value to set at the specified path

Return value

JSET.MSET returns a simple string reply: OK if executed correctly or error if fails to set the new values

For more information about replies, see Redis serialization protocol specification.

Examples

Add a new values in multiple keys

{{< highlight bash >}} redis> JSON.MSET doc1 $ '{"a":2}' doc2 $.f.a '3' doc3 $ '{"f1": {"a":1}, "f2":{"a":2}}' OK redis> JSON.GET doc1 $ "[{"a":2}]" redis> JSON.GET doc2 $ "[{"f":{"a":3]" redis> JSON.GET doc3 "{"f1":{"a":3},"f2":{"a":3}}" {{< / highlight >}}

See also

JSON.SET | JSON.MGET | JSON.GET

Related topics