目录
1. 什么是有序集合
2. 命令使用
2.1 ZADD添加元素
2.2 ZREM删除元素
2.3 ZSCORE返回元素分值
2.4 ZINCRBY增加或减少分值
2.5 ZCARD有序集合的基数
2.6 ZRANK元素排名
2.7 ZREVRANK元素逆序排名
2.8 ZRANGE获取指定索引范围内的升序元素
2.9 ZREVRANGE获取指定索引范围内的降序元素
2.10 ZRANGEBYSCORE获取指定分值范围内的升序元素
2.11 ZREVRANGEBYSCORE获取指定分值范围内的降序元素
2.12 ZCOUNT计算给定分值范围内的元素数量
2.13 ZREMRANGEBYRANK移除指定排名范围内的升序排列元素
2.14 ZREMRANGEBYSCORE移除指定分值范围内的升序排列元素
2.15 ZUNIONSTORE计算并集
2.16 ZINTERSTORE计算交集
1. 什么是有序集合
有序集合可以包含任意数量的、各不相同的元素,有序集合的每个元素都关联着一个浮点数格式的分值(score),并且有序集合会按照分值,以从小到大的顺序来排列有序集合中的各个元素。举个例子:
2. 命令使用
2.1 ZADD添加元素
ZADD key score element:添加元素,返回添加成功元素的数量。
查看结果:
2.2 ZREM删除元素
ZREM key element:从有序集合中删除指定的元素和关联的分值,返回被成功删除的元素数量。
查看结果:
2.3 ZSCORE返回元素分值
ZSCORE key element:返回有序集合中指定元素的分值。
2.4 ZINCRBY增加或减少分值
ZINCRBY key number element:为指定元素的值增加或减少,number为负数实现减操作。返回执行操作后的分值。
2.5 ZCARD有序集合的基数
ZCARD key:返回有序集合的基数,包含元素的个数。
2.6 ZRANK元素排名
ZRANK key element:返回指定元素在有序集合中的排名,排名从0开始
2.7 ZREVRANK元素逆序排名
ZREVRANK key element:返回元素的逆序排名,排名从0开始。
2.8 ZRANGE获取指定索引范围内的升序元素
ZRANGE key start stop [WITHSCORES]:返回有序集合在索引 start 至索引 stop 范围之内的所有元素。当给定 WITHSCORES 选项时,命令会将元素和分值一并返回。start、stop可正可负。
2.9 ZREVRANGE获取指定索引范围内的降序元素
ZREVRANGE key start stop [WITHSCORES]:返回有序集合在索引 start 至索引 stop 范围之内的所有元素。当给定 WITHSCORES 选项时,命令会将元素和分值一并返回。start、stop可正可负。
2.10 ZRANGEBYSCORE获取指定分值范围内的升序元素
ZRANGEBYSCORE key min max [WITHSCORES][LIMIT offset count]:返回有序集合在按照分值升序排列元素的情况下,分值在 min 和 max 范围之内的所有元素。给定 WITHSCORES 选项时,元素和分值会一并返回。给定 LIMIT 选项时,可以通过 offset 参数指定返回的结果集要跳过多少个元素,而 count 参数则用于指定返回的元素数量。
2.11 ZREVRANGEBYSCORE获取指定分值范围内的降序元素
ZREVRANGEBYSCORE key max min[WITHSCORES] [LIMIT offset count]:返回有序集合在按照分值降序排列元素的情况下,分值在 min 和 max 范围之内的所有元素。给定 WITHSCORES 选项时,元素和分值会一并返回。给定 LIMIT 选项,可以通过 offset 参数指定返回的结果集要跳过多少个元素,而 count 参数则用于指定返回的元素数量。
2.12 ZCOUNT计算给定分值范围内的元素数量
ZCOUNT key min max:返回分值在min到max之间的元素个数。
2.13 ZREMRANGEBYRANK移除指定排名范围内的升序排列元素
ZREMRANGEBYRANK key start stop:移除有序集合中,元素按升序 进行排列的情况下,指定排名范 围内的所有元素。排名范围可以使用正数和负数。
2.14 ZREMRANGEBYSCORE移除指定分值范围内的升序排列元素
ZREMRANGEBYSCORE key min max:移除有序集合中,分值范围介于 min 和 max 之内的所有元素。
2.15 ZUNIONSTORE计算并集
ZUNIONSTORE newkey numkeys key [key..…]:计算给定集合的并集,并将结果存在newkey中,numkeys 参数指定要进行计算的有序集合个数。
如果两个有序列表里面的value值一致的话,在取并集的时候会将score值相加。
2.16 ZINTERSTORE计算交集
ZINTERSTORE newkey numkeys key [key..…]:计算给定集合的交集,并将结果存在newkey中,numkeys 参数指定要进行计算的有序集合个数。
当value值相同时,在取交集的时候score值会相加。