Команда Redis Zrangebyscore

Сортированное множество Redis

Redis Zrangebyscore возвращает список членов в сортированном множестве в пределах указанного интервала оценок. Члены сортированного множества располагаются в порядке возрастания значения оценки (от меньшего к большему).

Члены с одинаковым значением оценки располагаются в лексикографическом порядке (это свойство обеспечивается сортированным множеством и не требует дополнительных вычислений).

По умолчанию интервал использует закрытые интервалы (меньше или равно либо больше или равно). Вы также можете использовать необязательный открытый интервал (меньше или больше), добавив символ ( перед параметром.

Например:

ZRANGEBYSCORE zset (1 5

Возвращает все элементы, удовлетворяющие 1 < score <= 5, и

ZRANGEBYSCORE zset (5 (10

возвращает все элементы, удовлетворяющие 5 < score < 10.

Синтаксис

Базовый синтаксис команды redis Zrangebyscore выглядит следующим образом:

redis 127.0.0.1:6379> ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]

Доступные версии

>= 1.0.5

Возвращаемое значение

Список элементов сортированного множества со значениями score (необязательно) в указанном интервале.

Примеры

redis 127.0.0.1:6379> ZADD salary 2500 jack                        # 测试数据
(integer) 0
redis 127.0.0.1:6379> ZADD salary 5000 tom
(integer) 0
redis 127.0.0.1:6379> ZADD salary 12000 peter
(integer) 0

redis 127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf               # 显示整个有序集
1) "jack"
2) "tom"
3) "peter"

redis 127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf WITHSCORES    # 显示整个有序集及成员的 score 值
1) "jack"
2) "2500"
3) "tom"
4) "5000"
5) "peter"
6) "12000"

redis 127.0.0.1:6379> ZRANGEBYSCORE salary -inf 5000 WITHSCORES    # 显示工资 <=5000 的所有成员
1) "jack"
2) "2500"
3) "tom"
4) "5000"

redis 127.0.0.1:6379> ZRANGEBYSCORE salary (5000 400000            # 显示工资大于 5000 小于等于 400000 的成员
1) "peter"

Сортированное множество Redis

Другие расширения