Appearance
SortedSet
SortedSet 是一个可排序的 Set 集合,每个元素都带有一个 score 属性,可以基于 score 属性 对元素排序,底层的实现是一个跳表加哈希表。特性:
可排序
元素不重复
查询速度快
因为 SortedSet 的可排序特性,经常被用来实现排行榜这样的功能。
常用命令
ZADD
添加一个或多个成员并指定分数
ZADD key score member ZADD foo 85 jack
ZREM
ZREM foo jack
ZSCORE
获取指定元素的 score 值
ZSCORE foo A
ZRANK
获取指定元素的排名,默认是升序的排名。
ZRANK foo B ZREVRANK foo B
ZCARD
ZCOUNT
统计 socre 值在给定范围内的所有元素的个数,包括边界。
ZCOUNT foo min max ZCOUNT foo 0 80
ZINCRBY
让指定元素以指定的步长自增
ZINCRBY foo 2 A
ZRANGE
按照 score 升序排序后,获取指定排名范围内的元素,0 是排序后的第一个。
ZRANGE foo min max ZRANGE foo 0 3 ZREVRANGE foo 0 3
ZRANGEBYSCORE
安装 score 排序后,获取指定 score 范围内的元素。
ZRANGEBYSCORE foo min max ZRANGEBYSCORE foo 1 2
ZINTER
ZDIFF
ZUNION
所有的排名默认都是升序,如果要降序则在命令的 Z 后面添加 REV 即可,如 ZREVRANGE。