Redis学习篇(六)之ZSet类型及其操作
ZADD
作用: 将元素及其分数添加到集合中
语法: ZADD key score membre [score member]
当集合元素已经存在时,再次添加会更新其分数
当score是 +inf 时, 分数是正无穷
当score是 -inf 时,分数是负无穷
ZSCORE
作用:获得指定成员的分数
语法:ZSCORE key value
元素不存在,返回nil
ZRANGE
作用: 按照分数从小到大的顺序返回指定索引start到stop之间的元素,参数WITHSCORES指定显示分数
语法: ZRANGE key start stop [WITHSCORES]
包含stop
若stop索引超过集合长度,则返回全部存在的元素
若start超过了集合的长度,则为空
分数相同时,按照字典的顺序排序
ZREVRANGE
作用: 按照分数从大到小的顺序返回指定索引start到stop之间的元素,参数WITHSCORES指定显示分数
语法: ZREVRANGE key start stop [WITHSCORES]
包含start和stop
ZRANGEBYSCORE
作用:获得指定分数范围内的元素,按照分数从小到大的顺序
语法:ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
(min (max 表示不包含端点
-inf +inf 表示负无穷大和正无穷大
LIMIT 必须指定偏移量, 在指定数量
ZREVRANGEBYSCORE
作用:获得指定分数范围内的元素,按照分数从大到小的顺序
语法:ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
ZINCRBY
作用: 操作某个元素的分数,返回操作之后的分数
语法: ZINCRBY key increment member
ZCARD
作用: 获得集合中元素的数量
语法: ZCARD key
ZCOUNT
作用: 指定分数范围内的元素个数
语法: ZCOUNT key min max
ZREM
作用: 删除一个或者多个元素,返回删除元素的个数
语法: ZREM key member,member ...
ZREMRANGEBYRANK
作用: 按照分数从小到大的顺序, 删除指定索引范围内的所有的元素
语法: ZREMRANGEBYRANK key start stop
ZREMRANGEBYSCORE
作用: 按照分数范围删除元素
语法: ZREMRANGEBYSCORE key min max
ZRANK
作用: 按照分数从小到大的顺序, 获得指定元素的排名
语法: ZRANK key member
ZREVRANK
作用: 按照分数从大到小的顺序,获得指定元素的排名
语法: ZREVRANK key member
ZINTERSTORE
作用: 计算有序集合的交集,并将结果保存起来
语法: ZINTERSTORE destination numkeys key key...
[WEIGHTS weight weight...] [AGGREGATE SUM|MIN|MAX]
默认是分数求和
destination 指定目标集合
numkeys 指定集合的个数
key 指定集合名称
WEITHGS 指定权重
AGGEGATE 分数的计算方式
ZUNIONSTORE
作用: 计算有序集合的并集,并将结果保存起来
语法: ZINTERSTORE destination numkeys key key...
[WEIGHTS weight weight...] [AGGREGATE SUM|MIN|MAX]
默认是分数求和
destination 指定目标集合
numkeys 指定集合的个数
key 指定集合名称
WEITHGS 指定权重
AGGEGATE 分数的计算方式