一、引言

今天晚上不加班,不加班,爽翻。不加班就能安安心心继续学习了,继续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>

redis中Zset数据类型最全常用命令相关推荐

  1. 基于Redis中 Zset数据类型实现各类高性能排行榜日榜、周榜(附上整合SpringBoot示例代码)

    目录 为什么要使用redis? 日榜.周榜实现方案介绍 热度增加代码参考 日榜获取 周榜获取 为什么要使用redis? 如果使用mysql 要实现排行榜功能,如果使用 mysql或其它关系型数据库 来 ...

  2. Java中使用Jedis连接Redis对Hash进行操作的常用命令

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  3. Java中使用Jedis连接Redis对Set进行操作的常用命令

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  4. Java中使用Jedis连接Redis对List进行操作的常用命令

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  5. Java中使用Jedis连接Redis对String进行操作的常用命令

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  6. redis中各种数据类型对应的jedis操作命令

    2019独角兽企业重金招聘Python工程师标准>>> redis中各种数据类型对应的jedis操作命令 博客分类: 缓存 http://www.fwqtg.net/redis%E4 ...

  7. Redis 入门和 RedisTemplate 常用方法(常用命令 + 案例源码)

    Redis 入门 内容 一.Redis 概念 二.Redis 优缺点 1. 优点 2. 缺点 三.应用场景 四.Redis 安装 五.常用命令 1. Redis 字符串(String) 1.1 概念 ...

  8. redis ZSet php,redis中zset怎么使用

    Redis中zset是set的一个升级版本,他在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序.可以理解了有两列的mysql表, ...

  9. redis学习-列表(list)常用命令

    redis学习-列表(list)常用命令 lpush:从列表左侧头部添加数据 rpush:从右侧尾部添加数据 lpop:从给左侧头部取出一个元素 rpop:从右侧尾部取出一个元素 lrange:取出指 ...

最新文章

  1. Leetcode 141.环形链表
  2. android 日历下面备注,怎样在日历的下面加备注?
  3. python0表示剪刀_石头,纸,剪刀Python代码。帮助简化
  4. hibernate的初次使用
  5. 全排列 DFS 回溯
  6. ant编辑java忽略注释_java – 注释不起作用
  7. execve系统调用_Linux操作系统中的namespace是个什么鬼
  8. android在标准linux基础上对休眠唤醒的实现,Android在标准linux基础上对休眠唤醒的实现(三)...
  9. keepalived 非抢占模式
  10. 贾俊平-第七章:参数估计
  11. 中国联通:网络重构转型的战略规划及痛点
  12. AdapterVIew
  13. 《新白娘子传奇》隐藏惊天秘密-白素贞的身世之谜
  14. 冰点还原_8.60.020.5592_Standard版本手动卸载
  15. 怎么删除计算机病毒,电脑中病毒删不掉怎么办?
  16. 单节点部署OpenStack平台及破解密码
  17. Jupyter处理大量数据导致内存溢出 网页崩溃的解决办法
  18. keil5编写C51程序
  19. JSD-2204-JavaScript-Vue-Day05
  20. 零空间、点积与对偶性

热门文章

  1. 西文是指什么_什么是西文字体?什么意思?
  2. GitHub 术语解释
  3. 想创业,就别输不起!--leo看赢在中国第三季(7)-----尊重原版作者牌权。
  4. 安卓笔记之ViewPager页卡
  5. Angular随记:Angular CLI安装及使用
  6. Xilinx 还是altera
  7. 字符串切片反转字符串_如何反转字符串
  8. 经典的shell十三问
  9. a标签的带参传值和form表单的带参
  10. ONE一言每天一句名言API