• Redis系统学习之五大基本数据类型(Zset(有序集合))


    Zset(有序集合)

    • Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。

    不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。

    有序集合的成员是唯一的,但分数(score)却可以重复。

    集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 232- 1 (4294967295,

    每个集合可存储40多亿个成员)。

    添加元素

    • zadd key score1 value[s-v循环,空格拆分]
      • 添加多个元素
      • image.png

    获取集合的元素个数

    • zcard key
      • 查询刚才加入的元素个数
      • image.png

    通过索引获取元素

    • zrange key startindex stopindex [withscores(是否携带分数展示)]
      • 获取全部元素
      • image.png

    计算指定分数区间的元素个数

    • zcount key min max
      • 统计50分到70分的元素个数
      • image.png

    对指定元素的分数做累加或者累减

    • zincrby key 步长 元素名
      • 为xiaojiejie加10分,小哥哥减10分
      • image.png

    获取多个元素的交集(并集)并存储到新的集合中

    • zinterstore 目标zset名字 集合数量 key1 key2 keyn
    • 并集采用zunionstore开头后面的一样
      • 获取zset集合和zset1集合中的交集并存储到zsetnew 中
      • image.png

    通过分数区间返回集合内的元素

    • zrangebyscore key min max [withscores] [limit 页数 页容量]
      • 查询全部数据携带分数 -inf +inf 代表负无穷和正无穷
      • image.png
      • 查询全部的数据的前3条
      • image.png
      • 查询大于30并且小于等于60的数据, "("这个符号代表不包含等于,不携带就代表包含等于
      • image.png

    返回集合中指定元素的索引

    • zrank key 元素名
      • image.png

    移除集合中的一个或多个元素

    • zrem key value[v循环,空格分割]
      • 移除xiaoliu和wangwu
      • image.png

    根据索引区间移除元素

    • zremrangebyrank key startindex endindex
      • 移除从0-1的元素
      • image.png

    根据分数区间移除元素

    • zremrangebyscore key min max
      • 移除大于60小于80分的元素
      • image.png

    根据元素的值返回分数

    • zscore key value
      • image.png

    作者:彼岸舞

    时间:202155

    内容关于:Redis

    本文属于作者原创,未经允许,禁止转发

  • 相关阅读:
    2014年7月 记事
    从客户端中检测到有潜在危险的Request.Form值 的解决方法
    jquery parent() parents() closest()区别
    不包含适合于入口点的静态"Main"方法
    JQuery移除事件
    jQ的toggle()方法示例
    codeforces hello2018 D Too Easy Problems
    HDU-6084 寻找母串
    51Nod 1109 01组成N的倍数
    可重排列
  • 原文地址:https://www.cnblogs.com/flower-dance/p/14731107.html
Copyright © 2020-2023  润新知