Redis有序集合类似Redis集合存储在设定值唯一性。不同的是,一个有序集合的每个成员带有分数,用于以便采取有序set命令,从最小的到最大的分数有关。
Redis 有序set添加,删除和测试中的O(1)的存在成员(固定时间,无论里面包含的元素集合的数量)。列表的最大长度为232- 1元素(4294967295,超过4十亿每个元素的集合)。
例子
redis 127.0.0.1:6379> ZADD tutorials 1 redis (integer) 1 redis 127.0.0.1:6379> ZADD tutorials 2 mongodb (integer) 1 redis 127.0.0.1:6379> ZADD tutorials 3 mysql (integer) 1 redis 127.0.0.1:6379> ZADD tutorials 3 mysql (integer) 0 redis 127.0.0.1:6379> ZADD tutorials 4 mysql (integer) 0 redis 127.0.0.1:6379> ZRANGE tutorials 0 10 WITHSCORES 1) "redis" 2) "1" 3) "mongodb" 4) "2" 5) "mysql" 6) "4"
在上述例子中的三个值由命令ZADD插入其分数在redis排序集合并命名tutorials。
Redis排序命令集
如下表显示与排序集的一些基本命令:
S.N. |
命令& 描述 |
1 |
ZADD key score1 member1 [score2 member2]
添加一个或多个成员到有序集合,或者如果它已经存在更新其分数 |
2 |
ZCARD key
得到的有序集合成员的数量 |
3 |
ZCOUNT key min max
计算一个有序集合成员与给定值范围内的分数 |
4 |
ZINCRBY key increment member
在有序集合增加成员的分数 |
5 |
ZINTERSTORE destination numkeys key [key ...]
多重交叉排序集合,并存储生成一个新的键有序集合。 |
6 |
ZLEXCOUNT key min max
计算一个给定的字典范围之间的有序集合成员的数量 |
7 |
ZRANGE key start stop [WITHSCORES]
由索引返回一个成员范围的有序集合。 |
8 |
ZRANGEBYLEX key min max [LIMIT offset count]
返回一个成员范围的有序集合(由字典范围) |
9 |
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]
按分数返回一个成员范围的有序集合。 |
10 |
ZRANK key member
确定成员的索引中有序集合 |
11 |
ZREM key member [member ...]
从有序集合中删除一个或多个成员 |
12 |
ZREMRANGEBYLEX key min max
删除所有成员在给定的字典范围之间的有序集合 |
13 |
ZREMRANGEBYRANK key start stop
在给定的索引之内删除所有成员的有序集合 |
14 |
ZREMRANGEBYSCORE key min max
在给定的分数之内删除所有成员的有序集合 |
15 |
ZREVRANGE key start stop [WITHSCORES]
返回一个成员范围的有序集合,通过索引,以分数排序,从高分到低分 |
16 |
ZREVRANGEBYSCORE key max min [WITHSCORES]
返回一个成员范围的有序集合,按分数,以分数排序从高分到低分 |
17 |
ZREVRANK key member
确定一个有序集合成员的索引,以分数排序,从高分到低分 |
18 |
ZSCORE key member
获取给定成员相关联的分数在一个有序集合 |
19 |
ZUNIONSTORE destination numkeys key [key ...]
添加多个集排序,所得排序集合存储在一个新的键 |
20 |
ZSCAN key cursor [MATCH pattern] [COUNT count]
增量迭代排序元素集和相关的分数 |