JSON.MGET

用法
JSON.MGET key [ key ... ] path
复杂度
O(N),其中 N 是键的数量
模块
valkey-json
模块版本
1.0.0
ACL 分类
@read, @fast, @json

从指定路径的多个文档键中获取序列化的 JSON 对象。对于不存在的键或 JSON 路径,返回 null。

示例

增强路径语法

127.0.0.1:6379> JSON.SET k1 . '{"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021"}}'
OK
127.0.0.1:6379> JSON.SET k2 . '{"address":{"street":"5 main Street","city":"Boston","state":"MA","zipcode":"02101"}}'
OK
127.0.0.1:6379> JSON.SET k3 . '{"address":{"street":"100 Park Ave","city":"Seattle","state":"WA","zipcode":"98102"}}'
OK
127.0.0.1:6379> JSON.MGET k1 k2 k3 $.address.city
1) "[\"New York\"]"
2) "[\"Boston\"]"
3) "[\"Seattle\"]"

受限路径语法

127.0.0.1:6379> JSON.SET k1 . '{"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021"}}'
OK
127.0.0.1:6379> JSON.SET k2 . '{"address":{"street":"5 main Street","city":"Boston","state":"MA","zipcode":"02101"}}'
OK
127.0.0.1:6379> JSON.SET k3 . '{"address":{"street":"100 Park Ave","city":"Seattle","state":"WA","zipcode":"98102"}}'
OK

127.0.0.1:6379> JSON.MGET k1 k2 k3 .address.city
1) "\"New York\""
2) "\"Seattle\""
3) "\"Seattle\""

RESP2 响应

  • 数组响应:批量字符串数组,其大小等于命令中的键数量。

    • 每个元素可以是

  • 简单错误响应:如果任何指定的键存在但不是 JSON 键,则返回 WRONGTYPE 错误。

RESP3 响应

  • 数组响应:批量字符串数组,其大小等于命令中的键数量。

    • 每个元素可以是

  • 简单错误响应:如果任何指定的键存在但不是 JSON 键,则返回 WRONGTYPE 错误。