ZREVRANGEBYSCORE 命令返回有序集合 key 中,所有 score 值介于 max 和 min 之间(包括等于 min 和 max)的成员。有序集合成员按 score 值递减(从大到小)次序排列。
命令格式
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
ZREVRANGEBYSCORE 命令类似于 ZRANGEBYSCORE 命令
可用版本:>=2.2.0
时间复杂度:O(log(N)+M),N 为有序集合的基数(成员个数),M 为指定的返回条数。
参数说明
max:分数排序位置较大的成员。
min:分数排序位置较小的成员。
WITHSCORES:该参数将有序集成员及其 score 值一起返回。该选项自 Redis 2.0 版本起可用。
LIMIT:返回结果是否分页,指令中包含 LIMIT 后 offset、count 必须输入。注意当 offset 很大时,定位 offset 的操作可能需要遍历整个有序集,此过程最坏复杂度为 O(N) 时间。
offset:返回结果起始位置。
count:返回结果数量。
命令返回值
返回指定区间内,带有 score 值(可选项)的有序集成员的列表。
示例
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZREVRANGEBYSCORE myzset +inf -inf
1) "three"
2) "two"
3) "one"
redis> ZREVRANGEBYSCORE myzset 2 1
1) "two"
2) "one"
redis> ZREVRANGEBYSCORE myzset 2 (1
1) "two"
redis> ZREVRANGEBYSCORE myzset (2 (1
(empty list or set)