zoukankan      html  css  js  c++  java
  • 2019版:第三章:(6)Redis 五大数据类型 之 ZSet

    一、ZSet 类型

        1、Redis 有序集合 zSet 与普通集合 set 非常相似,是一个没有重复元素的字符串集合。不同之处是有序集合的每个成员都关联了一个评分(score),这个评分(score)被用来按照从最低分到最高分的方式排序集合中的成员。集合的成员是唯一的,但是评分可以是重复的
        2、因为元素是有序的,所以你也可以很快的根据评分(score)或者次序(position)来获取一个范围的元素。
            访问有序集合的中间元素也是非常快的,因此能够使用有序集合作为一个没有重复成员的智能列表。

    二、常用操作

    zadd <key><score1><value1><score2><value2>...
    将一个或多个 member 元素及其 score 值加入到有序集 key 当中
    zrange <key> <start> <stop> [withscores]
    返回有序集 key 中,下标在 <start><stop>之间的元素,
    带 withscores,可以让分数一起和值返回到结果集
    zrangebyscore key min max [withscores] [limit offset count]
    返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于min 或max)的成员。
    有序集成员按 score 值递增(从小到大)次序排列
    zrevrangebyscore key max min [withscores] [limit offset count]
    同上,改为从大到小排列
    zincrby <key> <increment> <value>
    为元素的 score 加上增量
    zrem <key> <value>
    删除该集合下,指定值的元素
    zcount <key> <min> <max>
    统计该集合,分数区间内的元素个数
    zrank <key> <value>
    返回该值在集合中的排名,从0开始
      特殊情况
      1、相同分数,相同值,无法添加进去;
      2、不同分数,相同值,会将分数更新掉;
      3、相同分数,不同元素(值):能添加进去,还能正常排序
      zSet 以 value 为键,分数为值

    三、案例

      如何利用 zSet 实现一个文章访问量的排行榜?
      可以利用 zSet 的升序以及降序来排序,然后实现排名。
  • 相关阅读:
    Oracle错误——ORA-12704:字符集不匹配
    nodejs 错误问题解决
    windows 卸载 node.js 怎么卸载搜索
    Git安装配置及基本使用(windows)
    破解photoshop cs6 mac
    将text中的数字转换为字符串
    JavaScript 为什么不推荐使用 eval?
    Permission denied (publickey).
    linux 命令
    恢复 git reset -hard 的误操作
  • 原文地址:https://www.cnblogs.com/niujifei/p/15792408.html
Copyright © 2011-2022 走看看