redis中Zset数据类型最全常用命令

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38111957/article/details/82668283

一、引言

今天晚上不加班,不加班,爽翻。不加班就能安安心心继续学习了,继续redis学习哈。今天学习redis五大数据类型最后一个了。上一章学习了Set无序集合,那么有无序集合肯定就会有有序集合了。Zset是Set集合的升级版,他在Set集合增加了一个顺序的属性,再往Zset集合中添加数据,需要加上该元素的顺序,每一次赋值Zset会重新按照顺序属性进行调整顺序。

废话不多说,开整吧!!

二、Zset数据类型常用命令

 zadd:往集合中添加元素

127.0.0.1:6379> zadd myzset 1 noe
           (integer) 1
           127.0.0.1:6379> zadd myzset 2 tow
           (integer) 1
           127.0.0.1:6379> 

zrange:查看集合中的元素,后面加上withscores即可显示当前元素所对应的顺序

127.0.0.1:6379> zrange myzset 0 -1
           1) "noe"
           2) "tow"
          127.0.0.1:6379> zrange myzset 0 -1 withscores
          1) "noe"
          2) "1"
          3) "tow"
          4) "2"
          127.0.0.1:6379> 

zrem:删除集合中指定的元素

127.0.0.1:6379> zrem myzset tow
           (integer) 1
           127.0.0.1:6379> zrange myzset 0 -1
           1) "noe"
           127.0.0.1:6379> 

zincrby:指定增加元素所对应的顺序,之前noe对应的顺序是1,然后使用zincrby新增了3

127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "noe"
            2) "1"
           127.0.0.1:6379> zincrby myzset 3 noe
           "4"
           127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "noe"
           2) "4"
           127.0.0.1:6379> 

zrank:返回指定元素,在集合中的所对应的索引。 索引是从0开始的,noe对应的索引是0,four对应的是3。按从小到大的顺序

127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "noe"
           2) "1"
           3) "tow"
           4) "2"
           5) "three"
           6) "3"
           7) "four"
           8) "4"
          127.0.0.1:6379> zrank myzset noe
          (integer) 0
          127.0.0.1:6379> zrank myzset four
          (integer) 3
          127.0.0.1:6379> 

zrevrank:返回指定元素,在集合中的所对应的索引。按从从大到小的顺序,因为是按从大到小的排序,所以four索引变成了0,而noe的索引是3

127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "noe"
           2) "1"
           3) "tow"
           4) "2"
           5) "three"
           6) "3"
           7) "four"
           8) "4"
          127.0.0.1:6379> zrevrank myzset noe
          (integer) 3
          127.0.0.1:6379> zrevrank myzset four
          (integer) 0
         127.0.0.1:6379> 

zrevrange:按集合顺序,从大到小进行显示

127.0.0.1:6379> zrevrange myzset 0 -1 withscores
           1) "four"
           2) "4"
           3) "three"
           4) "3"
           5) "tow"
           6) "2"
           7) "noe"
           8) "1"
          127.0.0.1:6379> 

zrangebyscore:显示指定顺序范围内的元素,按元素顺序

127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "noe"
           2) "1"
           3) "tow"
           4) "2"
           5) "three"
           6) "3"
           7) "four"
           8) "4"
          127.0.0.1:6379> zrangebyscore myzset 2 3
          1) "tow"
          2) "three"
         127.0.0.1:6379> 

zcount:返回指定顺序范围内元素的个数,按元素顺序

127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "noe"
           2) "1"
           3) "tow"
           4) "2"
          5) "three"
          6) "3"
          7) "four"
          8) "4"
          127.0.0.1:6379> zcount myzset 2 3
          (integer) 2
          127.0.0.1:6379> 

zcrad:返回集合中元素数量

127.0.0.1:6379> zcard myzset
           (integer) 4
           127.0.0.1:6379> 

zremrangebyrank:删除指定索引范围内的元素,索引从0开始,0到1,相对应的元素是noe、tow。按索引

127.0.0.1:6379> zrange myzset 0 -1
           1) "noe"
           2) "tow"
           3) "three"
          4) "four"
         127.0.0.1:6379> zremrangebyrank myzset 0 1
         (integer) 2
         127.0.0.1:6379> zrange myzset 0 -1
         1) "three"
         2) "four"
        127.0.0.1:6379> 

zremrangebyscore:删除指定顺序范围内的元素,按元素所对应的顺序

127.0.0.1:6379> zrange myzset 0 -1 withscores
           1) "three"
           2) "3"
           3) "four"
           4) "4"
           127.0.0.1:6379> zremrangebyscore myzset 3 4
           (integer) 2
           127.0.0.1:6379> zrange myzset 0 -1 withscores
           (empty list or set)
           127.0.0.1:6379> 

猜你喜欢

转载自blog.csdn.net/weixin_38111957/article/details/82668283