位置:首页 > 数据库 > Redis在线教程 > Redis有序集合

Redis有序集合

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] 
增量迭代排序元素集和相关的分数