JSON.ARRAPPEND

将 JSON 值附加到数组中最后一个元素后面的路径中

语法

JSON.ARRAPPEND key path value [value ...]

引入版本:1.0.0

复杂度摘要:O(1)

将 JSON 值附加到数组中最后一个元素后面的 path 处。

示例

必需参数

key

修改关键。

path

是要匹配的 JSONPath。

value

是将一个或多个值附加到一个或多个数组。

[!NOTE] 关于在 JSON 命令中使用字符串 要将字符串指定为要附加的数组值,请使用一组附加的单引号将带引号的字符串括起来。示例:'"silver"'。更详细的使用请参见示例。

示例

Add a new color to a list of product colors

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

redis> JSON.SET item:1 $ '{"name":"降噪蓝牙耳机","description":"具有降噪技术的无线蓝牙耳机","connection":{"wireless":true,"type":"蓝牙"},"price":99.98,"stock":25,"colors":["black","silver"]}' OK

将 blue 添加到 colors 数组的末尾。 JSON.ARRAPPEND 返回 colors 数组的新长度。

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

获取 colors 数组的更新值。

redis> JSON.GET item:1 $.colors "[[\"黑色\",\"银色\",\"蓝色\"]]"

Redis Software 与 Redis Cloud 兼容性

Redis
软件
Redis
Cloud
说明
✅ 支持
✅ 灵活且每年一次
✅ 免费和固定

返回值

RESP2

使用基于 $ 的路径参数:数组回复 或 整数回复 或 空回复,其中每个元素是数组的新长度;如果匹配值不是数组,则为 null。

使用基于 . 的路径参数:整数回复 表示数组的新长度,如果匹配值不是数组,则为 空回复。

RESP3

使用基于 $ 的路径参数(默认):数组回复 或 整数回复 或 空回复,其中每个元素是数组的新长度;如果匹配值不是数组,则为 null。

使用基于 . 的路径参数:整数回复 表示数组的新长度,如果匹配值不是数组,则为 空回复。

参见

JSON.ARRINDEX | JSON.ARRINSERT

资料来源:Redis 官方 JSON.ARRAPPEND 文档;中文内容参考 Redis 文档许可。