• Redis之sorted set 命令


    Redis之sorted set 命令

    1.zrevrank

    Zrevrank 命令返回有序集中成员的排名;
    其中有序集成员按分数值递减(从大到小)排序;
    排名以 0 为底,也就是说, 分数值最大的成员排名为 0 ;
    使用 ZRANK 命令可以获得成员按分数值递增(从小到大)排列的排名;
    如果成员是有序集 key 的成员,返回成员的排名。 如果成员不是有序集 key 的成员,返回 nil

    ZREVRANK key member
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CcCRfprw-1656385038462)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628095405835.png)]

    2.zlexcount

    命令在计算有序集合中指定字典区间内成员数量;
    返回指定区间内的成员数量

    ZLEXCOUNT KEY MIN MAX
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r1zqQLeG-1656385038463)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628095612860.png)]

    3.zunionstore

    命令计算给定的一个或多个有序集的并集,其中给定 key 的数量必须以 numkeys 参数指定,并将该并集(结果集)储存到 destination;
    默认情况下,如果给定的集合中key相同时,结果集中该成员的分数值是所有给定集下该成员分数值之和 ;
    使用WEIGHTS选项,你可以为每个给定的有序集指定一个乘法因子,意思就是,每个给定有序集的所有成员的score值在传递给聚合函数之前都要先乘以该因子;如果WEIGHTS没有给定,默认就是1;
    使用AGGREGATE选项,你可以指定并集的结果集的聚合方式;默认使用的参数SUM,可以将所有集合中某个成员的score值之和作为结果集中该成员的score值。如果给定的集合中key相同时,如果使用参数MIN或者MAX,结果集就是所有集合中元素最小或最大的元素;
    如果key destination存在,就被覆盖返回保存到 destination 的结果集的成员数量;

    ZUNIONSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OFFaxX4R-1656385038464)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628100201931.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SlfssIuU-1656385038465)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628101449177.png)]

    以下紧接着上面的

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YCYmuS02-1656385038466)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628101534107.png)]

    4.zremrangebyrank

    命令用于移除有序集中,指定排名(rank)区间内的所有成员
    返回被移除成员的数量,如果给定的key不存在或者范围不正确返回0

    ZREMRANGEBYRANK key start stop
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gtek2lWb-1656385038466)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628102133356.png)]

    在这里插入图片描述

    5.zcard

    命令用于计算集合中元素的数量;
    当 key 存在且是有序集类型时,返回集合中元素的数量。 当 key 不存在时,返回 0

    ZCARD KEY_NAME
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dR25TfF4-1656385038467)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628102340744.png)]

    在这里插入图片描述

    6.zinterstore

    命令计算给定的一个或多个有序集的交集,其中给定 key 的数量必须以 numkeys 参数指定,并将该交集(结果集)储存到 destination ;
    默认情况下,如果给定的集合中key相同时,结果集中某个成员的分数值是所有给定集下该成员分数值之和;
    返回保存到目标结果集的的成员数量

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

    7.zrank

    返回有序集中指定成员的排名,其中有序集成员按分数值递增(从小到大)顺序排列;
    如果成员是有序集 key 的成员,返回 member 的排名。 如果成员不是有序集 key 的成员,返回 nil

     ZRANK key member
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6F0kByDf-1656385038468)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628102612984.png)]

    8.zincrby

    命令对有序集合中指定成员的分数加上增量 increment;
    可以通过传递一个负数值 increment ,让分数减去相应的值,比如 ZINCRBY key -5 member ,就是让 member 的 score 值减去 5 ;
    当 key 不存在,或分数不是 key 的成员时, ZICRBY key increment member 等同于 ZADD key increment member ;
    当 key 不是有序集类型时,返回一个错误;
    分数值可以是整数值或双精度浮点数;
    返回member 成员的新分数值,以字符串形式表示

    ZINCRBY key increment member
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s9voafqO-1656385038469)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628103122314.png)]

    9.zrangebyscore

    返回有序集合中指定分数区间的成员列表,有序集成员按分数值递增(从小到大)次序排列;
    具有相同分数值的成员按字典序来排列(该属性是有序集提供的,不需要额外的计算);
    默认情况下,区间的取值使用闭区间 (小于等于或大于等于),你也可以通过给参数前增加 ( 符号来使用可选的开区间 (小于或大于);
    返回指定区间内,带有分数值(可选)的有序集成员的列表;
    举个例子:
    ZRANGEBYSCORE zset (1 5
    返回所有符合条件 1 < score <= 5 的成员,
    而ZRANGEBYSCORE zset (5 (10
    则返回所有符合条件 5 < score < 10 的成员

    ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
    
    • 1

    ZRANGEBYSCORE salary -inf +inf WITHSCORES # 显示整个有序集及成员的 score 值
    ZRANGEBYSCORE salary -inf 5000 WITHSCORES # 显示工资 <=5000 的所有成员
    ZRANGEBYSCORE salary (5000 400000 # 显示工资大于 5000 小于等于 400000 的成员

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-74Or4nAP-1656385038470)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628103520573.png)]

    在这里插入图片描述

    10.zcount

    用于计算有序集合中指定分数区间的成员数量;
    返回分数值在 min 和 max 之间的成员的数量

     ZCOUNT key min max
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nnj4gzUX-1656385038471)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628104038343.png)]

    在这里插入图片描述

    11.zrevrange

    命令返回有序集中,指定区间内的成员;
    其中成员的位置按分数值递减(从大到小)来排列;
    具有相同分数值的成员按字典序的逆序(reverse lexicographical order)排列;
    返回指定区间内,带有分数值(可选)的有序集成员的列表

    ZREVRANGE key start stop [WITHSCORES]
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y837vPHj-1656385038471)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628104932839.png)]

    12.zrevrangebyscore

    返回有序集中指定分数区间内的所有的成员。有序集成员按分数值递减(从大到小)的次序排列;
    具有相同分数值的成员按字典序的逆序(reverse lexicographical order )排列;
    返回指定区间内,带有分数值(可选)的有序集成员的列表

    ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cBxorWRl-1656385038472)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628105040109.png)]

    13.zscan

    用于迭代有序集合中的元素(包括元素成员和元素分值);
    返回的每个元素都是一个有序集合元素,一个有序集合元素由一个成员(member)和一个分值(score)组成;
    cursor表示本次扫描的开始游标,可以理解成从开始索引。
    pattern表示正则表达式
    count表示希望返回的个数,实际返回个数会围绕该数波动,返回的个数可能等于该值也可能有一定出入,默认为10

     ZSCAN key cursor [MATCH pattern] [COUNT count]
    
    • 1

    14.zremrangebyscore

    命令用于移除有序集中,指定分数(score)区间内的所有成员;
    返回被移除成员的数量

    ZREMRANGEBYSCORE key min max
    
    • 1

    ZREMRANGEBYSCORE salary 1500 3500 # 移除所有薪水在 1500 到 3500 内的员工

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-80ryGXpR-1656385038472)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628105531130.png)]

    15.zrangebylex

    通过字典区间返回有序集合的成员;
    返回指定区间内的元素列表

    ZRANGEBYLEX key min max [LIMIT offset count]
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JTNSn3c5-1656385038473)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220628105606589.png)]

    16.zcore

    命令返回有序集中,成员的分数值。 如果成员元素不是有序集 key 的成员,或 key 不存在,返回 nil ;
    成员的分数值,以字符串形式表示

    ZSCORE key member
    
    • 1

    在这里插入图片描述

  • 相关阅读:
    PDAC复盘法是什么?怎么用?
    MyBatisPlus枚举类最佳实践(非常典型和高效的枚举类写法)
    Programming Languages PartB Week2学习笔记——用Racket编写解释器
    python读取文件数据 青少年编程电子学会python编程等级考试三级真题解析2020年12月
    【MySQL从入门到精通】【高级篇】(五)MySQL的SQL语句执行流程
    用强化学习玩《超级马里奥》
    【MCAL_CANDriver】-1.3-FullCAN和BasicCAN的差异及配置使用
    Thinkpad X201i笔记本电脑开机Fan Error
    直线段扫描算法
    RabbitMQ部署指南
  • 原文地址:https://blog.csdn.net/qq_53267860/article/details/125498313