• 【Redis】基本数据类型常用操作


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

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

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

    集合是通过哈希表实现的,所以添加、删除、查找的复杂度都是 O(1)。

    一、zadd

    将一个或多个成员元素及其分数值加入到有序集当中。分数值可以是整数值或双精度浮点数。

    若有序集合 key 不存在,则创建一个空的有序集并执行zadd操作。

    若 key 存在但不是有序集类型时,返回一个错误。

    zadd myzset 1 one 1.11 two 3.25 three
    

    二、zrange

    返回有序集中,指定区间内的成员。其中成员的位置按分数值递增(从小到大)来排序。

    具有相同分数值的成员按字典序(lexicographical order )来排列。

    zrange myzset 0 -1
    

    还可以带上分数返回:

    zrange myzset 0 -1 WITHSCORES
    

    三、zrevrange

    返回有序集中,指定区间内的成员。其中成员的位置按分数值递减(从大到小)来排列。

    zrevrange myzset 0 -1 WITHSCORES
    

    四、zrangebyscore

    返回有序集合中指定分数区间的成员列表。有序集成员按分数值递增(从小到大)次序排列。

    zrangebyscore myzset (1 2  # 这里相当于 1< score <=2
    
    zrangebyscore myzset 1 2 # 这里相当于 1<= score <=2
    
    zrangebyscore myzset -inf +inf # 这里-inf +inf 相当于 负无穷、正无穷,显示出所有
    

    五、 zrem

    移除有序集中的一个或多个成员,不存在的成员将被忽略。

    zrem myzset one three four
    

    六、zcard

    用于计算集合中元素的数量。

    zcard myzset
    

    七、zcount

    用于计算有序集合中指定分数区间的成员数量。

    zcount myzset 2 5
    

    还有其他的命令,在使用过程中不清楚可以查看官方文档中的命令查询,非常详尽。

    set的使用场景也很丰富,比如可以用来用作排序场景、存储工资表、班级成绩表、xx排行榜等等。

    --不要用肉体的勤奋,去掩盖思考的懒惰--
  • 相关阅读:
    获取ios设备的当前IP地址
    swift 日期的基本操作
    iOS ChildViewController使用示例
    Swift 进制转换问题
    objc_msgSend iOS8 EXC_BAD_ACCESS
    objc非主流代码技巧
    黑魔法__attribute__((cleanup))
    判断一个对象是否实现了某方法,而非继承而来
    Controlling How NSThread and NSRunLoop Exit
    万年历-农历-节气
  • 原文地址:https://www.cnblogs.com/pingguo-softwaretesting/p/14893004.html
Copyright © 2020-2023  润新知