redis之有序集合

一、概述

 有序集合和集合最大的区别在于有序二字,有序集合为每个元素关联一个分数(元素的分数可以相同)。

 有序集合类型和列表的共同点

 1、二者都是有序的

 2、二者都一个获取某一个范围的元素

 但是二者也有很大的区别



二、命令

1、ZADD  key score number [score number ......] 

 向有序集合加入一个元素和该元素的分数,如果该元素已经存在的话,则是更新该元素的分数,命令的返回值是,新加入到集合的元素个数。其中分数不仅可以是整数还可以是浮点数。

备注:+inf和-inf代表的是正无穷和负无穷


2、ZSCORE key member --获取元素的分数

 

3、获得排名在某个范围的元素列表

 ZRANGE key start  stop [WITHSCORES] 

 ZREVRANGE key start  stop [WITHSCORES] 

 

备注:

 1)WITHSCORES 返回的列表带有分数

 2)ZREVRANGE 和 ZRANGE唯一的不用就是ZREVRANGE是按照元素分数从大到小排序输出的

3)如果元素的分数相同的话,元素会按照字典排序("0"<"9"<"A"<"Z"<"a"<"z")的顺序进行排列

4) ZRANGE key 0 -1 返回所有的元素

 

4、ZRANGEBYSCORE key min_score max_score [WITHSCORES] [LIMIT OFFSET COUNT]

    获取某个分数范围内的元素

 

备注:在分数前面加 ”(“表示不包括该分数的意思

5、ZINCRBY key imcrement mumber--增加元素的分数,返回增加后,元素的分数

 

6、ZCARD key--获得集合中元素的数量

 

7、ZCOUNT key min_score max_score --获得指定分数范围内的元素个数

 

8、ZREM key member [member .....]--删除一个或是多个元素,返回的是被删除元素的个数

  

9、ZREMRANGEBYRANK key start stop --删除指定排名的元素

 

 

10、ZREMRANGEBYSCORE key start stop--按照分数范围删除元素

 

11、获得元素的排名

 ZRANK key member (按照元素的从小到大的顺序获取指定元素的排名,排名从0开始)

 ZREVRANK key member(和ZRANK相反)

 

12、计算有序集合的交集

 ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight...]] [AGGREGATE SUM|MIN?MAX]

 该命令用来计算多个有序集合的交集并将结果存储在destination键中,返回值为destination键中的元素个数

参数解析:

  1)当AGGREGATE 是SUM(默认值),destination键中元素的分数是每个参与计算集合中该元素分数的和

   

2)当AGGREGATE 是MIN,destination键中元素的分数是每个参与计算集合中该元素分数的最小值

3)当AGGREGATE 是MAX,destination键中元素的分数是每个参与计算集合中该元素分数的最大值

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值