位置:首頁 > 數據庫 > 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] 
增量迭代排序元素集和相關的分數