JSON.ARRLEN
语法
JSON.ARRLEN key [path]
- 可用性
- Redis Stack / JSON 1.0.0
- 时间复杂度
- O(1) 当路径解析为单个值时,O(N) 当路径解析为多个值时,其中 N 是键的大小
报告 key
中 path
处的 JSON 数组的长度
必需参数
key
是要解析的键。
可选参数
path
是要指定的 JSONPath。默认情况下为根 $
,如果未提供。如果 key
或 path
不存在,则返回 null。
返回值
JSON.ARRLEN
返回一个 数组 的整数回复,每个匹配值对应一个整数,每个都是数组的长度,或者 nil
,如果匹配值不是数组。有关回复的更多信息,请参见 Redis 序列化协议规范.
示例
获取文档中 JSON 数组的长度
为无线耳机创建文档。
redis> JSON.SET item:2 $ '{"name":"Wireless earbuds","description":"Wireless Bluetooth in-ear headphones","connection":{"wireless":true,"type":"Bluetooth"},"price":64.99,"stock":17,"colors":["black","white"], "max_level":[80, 100, 120]}'
OK
查找文档中所有对象的数组长度。
redis> JSON.ARRLEN item:2 '$.[*]'
1) (nil)
2) (nil)
3) (nil)
4) (nil)
5) (nil)
6) (integer) 2
7) (integer) 3
返回 max_level
数组的长度。
redis> JSON.ARRLEN item:2 '$..max_level'
1) (integer) 3
获取所有最大级别值。
redis> JSON.GET item:2 '$..max_level'
"[[80,100,120]]"
参见
JSON.ARRINDEX
| JSON.ARRINSERT