# ZREVRANGEBYSCORE

> Get the members of a sorted set with scores in a range, highest first.

URL: https://docs.hotkv.com/commands/zrevrangebyscore/

```
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
```

- Group: Sorted set
- Complexity: O(log(N)+M) where N is the size of the sorted set and M is the number of members returned
- HotKV Cloud: all plans
- On-Premise: no license needed
- Deprecated: use ZRANGE instead

`ZREVRANGEBYSCORE` returns the members of the sorted set at `key` whose score
is between `max` and `min`, from the highest score to the lowest. Note that the
higher bound comes first. It is the same as
`ZRANGE key max min BYSCORE REV`; new code can use [ZRANGE](https://docs.hotkv.com/commands/zrange/index.md).

Bounds are inclusive unless prefixed with `(`, and `-inf` / `+inf` are allowed.

## Options

| Option | Effect |
| --- | --- |
| `WITHSCORES` | Return each member with its score. |
| `LIMIT offset count` | Skip `offset` matching members, then return at most `count`. A negative `count` returns all remaining members. |

## Return value

| Case | RESP2 | RESP3 |
| --- | --- | --- |
| Success | Array of members | Same |
| With `WITHSCORES` | Flat array: member, score, ... (scores as bulk strings) | Array of `[member, score]` pairs, the score a double |
| Key does not exist or nothing in range | Empty array | Same |

Errors are the same as for [ZRANGEBYSCORE](https://docs.hotkv.com/commands/zrangebyscore/index.md).

## Examples

```
127.0.0.1:6379> ZADD board 1 "a" 2 "b" 3 "c"
(integer) 3
127.0.0.1:6379> ZREVRANGEBYSCORE board +inf (1
1) "c"
2) "b"
127.0.0.1:6379> ZREVRANGEBYSCORE board 3 1 WITHSCORES LIMIT 0 1
1) "c"
2) "3"
```

## Compatibility

Same as Redis 7.4 and Valkey 8, where it is also deprecated in favour of
`ZRANGE ... BYSCORE REV`.

## See also

[ZRANGE](https://docs.hotkv.com/commands/zrange/index.md), [ZRANGEBYSCORE](https://docs.hotkv.com/commands/zrangebyscore/index.md), [ZREVRANGE](https://docs.hotkv.com/commands/zrevrange/index.md)