JSON.MGET

从多个键参数返回路径中的值

语法

JSON.MGET key [key ...] path

引入版本:1.0.0

复杂度摘要:O(M*N)

[!NOTE] 此命令的行为在集群 Redis 环境中有所不同。请参阅 多键操作 页面了解更多信息。

从多个 key 参数返回 path 处的值

[!警告] 当启用集群模式时,所有指定的键必须驻留在同一个 哈希槽 上。

当数据库有多个分片,并且指定的键驻留在不同的分片中时,Redis 不会报告 CROSSSLOT 错误(以避免破坏性更改),并且结果可能不完整。

示例

必需参数

key

解析的关键。对于不存在的键返回 null。

可选参数

path

是JSONPath来指定。对于不存在的路径返回 null。

示例

Return the values at path from multiple key arguments

创建两个 JSON 文档。

redis> JSON.SET doc1 $ '{"a":1, "b": 2, "nested": {"a": 3}, "c": null}' OK redis> JSON.SET doc2 $ '{"a":4, "b": 5, "nested": {"a": 6}, "c": null}' OK

从文档中的所有参数获取值。

redis> JSON.MGET doc1 doc2 $..a 1) "[1,3]" 2) "[4,6]"

Redis Software 与 Redis Cloud 兼容性

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

返回值

RESP2

批量字符串回复 或 空回复 的 数组回复,其中每个元素是相应键路径处的值的 JSON 序列化,如果键或路径不存在,则为 null。

RESP3

批量字符串回复 或 空回复 的 数组回复,其中每个元素是相应键路径处的值的 JSON 序列化,如果键或路径不存在,则为 null。

参见

JSON.SET | JSON.GET

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