命令

  1. 增加元素

    ZADD score member [score member ...]
    
    > ZADD scoreboard 89 Tom 76 Peter 100 David
    (integer 3)
    • ZADD 命令用来向有序集合中加入一个元素和该元素的分数,如果该元素已经存在则会用新的分数替换原有的分数。
    • ZADD 命令的返回值是新加入到集合中的元素个数
  2. 获得元素的分数

    ZSCORE key member
    
    > ZSCORE scoreboard Tom
    "89"
  3. 获得排名在某个范围的元素列表

    ZRANGE key start stop [WITHSCORES]  // 元素分数从小到大
    
    ZREVRANGE key start stop [WITHSCORES]   //元素分数从大到小
    
    > ZRANGE scoreboard 0 2
    1) "Peter"
    2) "Tom"
    3) "David"
    > ZRANGE scoreboard 0 2 WITHSCORES
    1) "Peter"
    2) "76
    3) "Tom"
    4) "89"
    5) "David"
    6) "100"
  4. 获得指定分数范围的元素

    ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
    
    ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
    
    > ZRANGEBYSCORE scoreboard 80 100 // 80 <= score <= 100
    1) "Tom"
    2) "David"
    > ZRANGEBYSCORE scoreboard 80 (100 // 80 <= score < 100
    1) "Tom"
    > ZRANGEBYSCORE scoreboard 80 +inf // 80 <= score
    1) "Tom"
  5. 增加某个元素的分数

    ZINCRBY key increment memeber
    
    > ZINCRBY scoreboard 4 Peter
    "80"
    > ZINCRBY scoreboard -4 Peter
    "76"
  6. 获得集合中元素的数量

    ZCARD key
    
    > ZCARD scoreboard
    (integer) 3
  7. 获得指定分数范围内的元素个数

    ZCOUNT key min max
    
    > ZCOUNT scoreboard 90 100
    (integer) 1
  8. 删除一个或多个元素

    ZREM key member [member ...]
    
    > ZREM scoreboard Jerry
    (integer) 1
    • 返回值是成功删除的元素数量
  9. 按照排名范围删除元素

    按照元素分数从小到大的顺序删除(即索引0表示最小的值)删除处于指定排名范围内的所有元素,并返回删除的元素个数

    ZREMRANGEBYRANK key start stop 
    
    > ZADD testRem 1 a 2 b 3 c 4 d 5 e 6 f
    (integer) 6
    > ZREMRANGEBYRANK testRem 0 2
    (integer) 3
    > ZRANGE testRem 0 -1
    1) "d"
    2) "e"
    3) "f"
  10. 按照分数范围删除元素

    ZREMRANGEBYSCORE key mix max
    
    > ZREMRANGEBYSCORE key (4 5
    (integer) 1
    > ZRANGE testRem 0 -1
    1) "d"
    3) "f"
  11. 获得元素的排名

    ZRANK key member // 按元素分数从小到大
    ZREVRANK key member //按元素分数从大到小 > ZRANK scoreboard Tom
    (integer) 0
    > ZREVRANK scoreboard Tom
    (integer) 1
  12. 计算有序集合的交集

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

Redis有序集合类型的更多相关文章

  1. redis有序集合类型sort set

    redis的数据类型之-有序集合 sort set和set类型一样,也是string类型元素的集合,也没有重复的元素,不同的是sort set每个元素都会关联一个权,通过权值可以有序的获取集合中的元素 ...

  2. redis 有序集合类型

  3. redis有序集合数据类型---sortedset

    一.概述 redis有序集合和集合一样,也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数. redis正式通过分数来为集合中的重圆进行从小到大的 ...

  4. Redis常用命令入门5:有序集合类型

    有序集合类型 上节我们一起学习了集合类型,感受到了redis的强大.现在我们接着学Redis的最后一个类型——有序集合类型. 有序集合类型,大家从名字上应该就可以知道,实际上就是在集合类型上加了个有序 ...

  5. Redis从基础命令到实战之有序集合类型(SortedSet)

    有序集合类型是Redis五种数据类型中最高级的.也是最复杂的类型.有序集合具有集合类型的特性,在其基础上给每个元素关联了一个分值,或称为权重,操作时既可以在添加元素时指定分值,也可以单独修改集合中某一 ...

  6. 15天玩转redis —— 第六篇 有序集合类型

    今天我们说一下Redis中最后一个数据类型 “有序集合类型”,回首之前学过的几个数据结构,不知道你会不会由衷感叹,开源的世界真好,写这 些代码的好心人真的要一生平安哈,不管我们想没想的到的东西,在这个 ...

  7. Redis自学笔记:3.6入门-有序集合类型

    3.6有序集合类型 3.6.1介绍 在集合类型基础上,为集合中每个元素都关联了一个分数,故可以获得 分数最高(最低)的前N个元素,可以获得指定范围内的元素等 有序集合中每个元素不同,但它们的分数却可以 ...

  8. 第二百九十九节,python操作redis缓存-SortSet有序集合类型,可以理解为有序列表

    python操作redis缓存-SortSet有序集合类型,可以理解为有序列表 有序集合,在集合的基础上,为每元素排序:元素的排序需要根据另外一个值来进行比较,所以,对于有序集合,每一个元素有两个值, ...

  9. redis:order set有序集合类型的操作(有序集合)

    1. order set有序集合类型的操作(有序集合) 有序集合是在无序集合的基础上加了一个排序的依据,这个排序依据叫score,因此声明一个集合为有序集合的时候要加上score(作为排序的依据) 1 ...

随机推荐

  1. Java 判断五子棋五子相连

    #开始 最近在忙着做一个基于酷Q的QQ机器人,想到了做游戏,第一个想到的霸气点的游戏就是五子棋啊  ` _>` 因为没有图形界面的原因 所有核心就是判断是否在棋盘上出现了五个棋子连在一起的情况 ...

  2. STM32 MDK C 常见易错点

    1.MDK编译器单字节的负数-1,-2,-3... ... 处理:存储,类型转换,位对齐. char 定义的变量在运算过程尤其类型转换,逻辑比大少会被当做 unsigned char 处理,这里很容易 ...

  3. php中判断shell_exec执行结果

    $shell = "wget -O despath sourcepath && echo 'success' "; $shellExec = shell_exec( ...

  4. C语言-对字符串二维数组各个元素进行比较-十进制数转化为其他进制数-进行规则矩阵的输出-190225

    //编写一个函数:从传入的num个字符中找到最长的一个字符,并通过max传回该串地址. //重点:切记这里a[0]就是一个地址. #include<conio.h> #include< ...

  5. PHP的isset(),is_null,empty()你了解了没?

    这几个变量判断函数在PHP开发中用的其实挺多的,而且粗看上去都差不多,但其实还是有不少的区别的,如果搞不清楚,也许就会遗留一些潜在的bug, 包括我自已也遇到过这样的坑,比如有一次我就遇到过用empt ...

  6. Eclipse Tomcat 7.0 添加WEB项目报错:Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web modules

    前言 我叫梅乾花,我误闯了“从零开始的程序世界”,遭受到了前所未有的的困难,为了活下去,为了看见美好的明天,我开始学习之旅. 问题篇我打开了"Eclipse",将项目导入其中,开启 ...

  7. CSS——textarea多行文本框禁止拖动问题解决

    文本框这样配置就好 textarea{ resize:none; }

  8. python下matplotlib的subplot的多图显示位置的问题

    1.说明 1.1 多图: 221,222 212 ------------附最后讲解,这下更清楚了吧,取个名字:颠倒一下--- 1.2 多图 211 223,224 ------------附最后讲解 ...

  9. 洗牌利器——random.shuffle()函数

    random.shuffle()是一个非常实用但是又非常容易被忽略的函数,shuffle在英语里是"洗牌"的意思,该函数非常形象地模拟了洗牌的过程,即: random.shuffl ...

  10. redis使用技巧小结

    一.Redis 密码设置和查看密码redis没有实现访问控制这个功能,但是它提供了一个轻量级的认证方式,可以编辑redis.conf配置来启用认证.1.初始化Redis密码:在配置文件中有个参数:re ...