JSON.ARRAPPEND

语法
JSON.ARRAPPEND key [path] value [value ...]
可用版本
Redis 开源版 / JSON 1.0.0
时间复杂度
当 path 求值为单个值时为 O(1),当 path 求值为多个值时为 O(N),其中 N 是 key 的大小。
ACL 类别
@json, @write, @slow,

json 值追加到 path 处数组的最后一个元素之后。

示例

必需参数

key

是要修改的 key。

value

是要追加到一个或多个数组的一个或多个值。

关于在 JSON 命令中使用字符串
要将字符串指定为要追加的数组值,请用另一组单引号将带引号的字符串括起来。例如:'"silver"'。有关更详细的用法,请参阅示例

可选参数

path

指定 JSONPath。默认为根路径 $

返回值

JSON.ARRAPPEND 返回一个数组,包含对应于每个 path 的整数回复(即数组的新大小),或者如果匹配的 JSON 值不是数组,则返回 nil。有关回复的更多信息,请参阅Redis 序列化协议规范

示例

向产品颜色列表中添加新颜色

为黑色和银色的降噪耳机创建一个文档。

redis> JSON.SET item:1 $ '{"name":"Noise-cancelling Bluetooth headphones","description":"Wireless Bluetooth headphones with noise-cancelling technology","connection":{"wireless":true,"type":"Bluetooth"},"price":99.98,"stock":25,"colors":["black","silver"]}'
OK

将颜色 blue 追加到 colors 数组的末尾。JSON.ARRAPPEND 返回数组的新大小。

redis> JSON.ARRAPPEND item:1 $.colors '"blue"'
1) (integer) 3

返回 colors 数组的新长度。

redis> JSON.GET item:1
"{\"name\":\"Noise-cancelling Bluetooth headphones\",\"description\":\"Wireless Bluetooth headphones with noise-cancelling technology\",\"connection\":{\"wireless\":true,\"type\":\"Bluetooth\"},\"price\":99.98,\"stock\":25,\"colors\":[\"black\",\"silver\",\"blue\"]}"

另请参阅

JSON.ARRINDEX | JSON.ARRINSERT


评价此页面
返回顶部 ↑