Redis zscan 命令用于迭代输出排序集合的元素及其分数。
zscan的基本用法
- zscan 是一个基于游标的迭代器。这意味着在每次调用命令时,服务器都会返回一个更新的游标,用户需要在下一次调用中将其用作游标参数。
- 当游标设置为0时开始迭代,当服务器返回的游标为0时结束。
语法:
zscan key cursor [MATCH pattern] [COUNT count]
- cursor - 游标。
- pattern - 匹配的模式。
- count - 指定从数据集里返回多少元素,默认值为 10 。
可用版本
>=2.8.0.
返回值
数组。
返回值类型
数组
示例1:Redis zscan
127.0.0.1:6379> zadd mytestset 1 M1 2 M2 3 M3 4 N1 5 N2 6 N3 7 O1 8 O2 9 O3
(integer) 9
127.0.0.1:6379> zscan mytestset 0
1) "0"
2) 1) "M1"
2) "1"
3) "M2"
4) "2"
5) "M3"
6) "3"
7) "N1"
8) "4"
9) "N2"
10) "5"
11) "N3"
12) "6"
13) "O1"
14) "7"
15) "O2"
16) "8"
17) "O3"
18) "9"
示例2:Redis zscan:使用计数
127.0.0.1:6379> zscan mytestset 0 COUNT 5
1) "0"
2) 1) "M1"
2) "1"
3) "M2"
4) "2"
5) "M3"
6) "3"
7) "N1"
8) "4"
9) "N2"
10) "5"
11) "N3"
12) "6"
13) "O1"
14) "7"
15) "O2"
16) "8"
17) "O3"
18) "9"
示例3:Redis zscan:使用模式
127.0.0.1:6379> zscan mytestset 0 COUNT 5
1) "0"
2) 1) "M1"
2) "1"
3) "M2"
4) "2"
5) "M3"
6) "3"
7) "N1"
8) "4"
9) "N2"
10) "5"
11) "N3"
12) "6"
13) "O1"
14) "7"
15) "O2"
16) "8"
17) "O3"
18) "9"
127.0.0.1:6379>
127.0.0.1:6379> zscan mytestset 0 MATCH N*
1) "0"
2) 1) "N1"
2) "4"
3) "N2"
4) "5"
5) "N3"
6) "6"
127.0.0.1:6379> zscan mytestset 0 MATCH *3*
1) "0"
2) 1) "M3"
2) "3"
3) "N3"
4) "6"
5) "O3"
6) "9"
127.0.0.1:6379> zscan mytestset 0 MATCH *3* COUNT 20
1) "0"
2) 1) "M3"
2) "3"
3) "N3"
4) "6"
5) "O3"
6) "9"