• Redis之Sorted Sets


    Redis之Sorted Sets

    1、ZADD

    ZADD key score member [score member ...]
    • 将所有指定成员添加到键为key有序集合(sorted set)里面。 添加时可以指定多个分数/成员(score/member)对。如果指定添加的成员已经是有序集合里面的成员,则会更新改成员的分数(scrore)并更新到正确的排序位置。
    • 如果key不存在,将会创建一个新的有序集合(sorted set)并将分数/成员(score/member)对添加到有序集合,就像原来存在一个空的有序集合一样。如果key存在,但是类型不是有序集合,将会返回一个错误应答。
    • 分数值是一个双精度的浮点型数字字符串。+inf和-inf都是有效值。

    例子

    127.0.0.1:6379> zadd key1 1 zhangsan
    (integer) 1
    127.0.0.1:6379> zadd key1 2 lisi
    (integer) 1
    127.0.0.1:6379> zadd key1 3 wangwu
    (integer) 1
    127.0.0.1:6379> zadd key1 4 zhouliu
    (integer) 1
    127.0.0.1:6379> zrange key1 0 -1
    1) "zhangsan"
    2) "lisi"
    3) "wangwu"
    4) "zhouliu"
    127.0.0.1:6379>

    2、ZCARD

    ZCARD key
    key存在的时候,返回有序集的元素个数,否则返回0

    例子 

    127.0.0.1:6379> zadd key1 1 zhngsan
    (integer) 1
    127.0.0.1:6379> zadd key1 2 lisi
    (integer) 1
    127.0.0.1:6379> zadd key1 3 wangwu
    (integer) 1
    127.0.0.1:6379> zrange key1 0 -1
    1) "zhngsan"
    2) "lisi"
    3) "wangwu"
    127.0.0.1:6379> zcard key1
    (integer) 3
    127.0.0.1:6379> zcard key2
    (integer) 0
    127.0.0.1:6379>

    3、ZRANGE 

    ZRANGE key start stop [WITHSCORES]
    • 返回存储在有序集合key中的指定范围的元素。 返回的元素可以认为是按得分从最低到最高排列。 如果得分相同,将按字典排序。
    • 参数start和stop都是基于零的索引,即0是第一个元素,1是第二个元素,以此类推。 它们也可以是负数,表示从有序集合的末尾的偏移量,其中-1是有序集合的最后一个元素,-2是倒数第二个元素。
    • 超出范围的索引不会产生错误。 如果start参数的值大于有序集合中的最大索引,或者start > stop,将会返回一个空列表。 如果stop的值大于有序集合的末尾,Redis会将其视为有序集合的最后一个元素。

    返回值

    给定范围内的元素列表

    例子 

    127.0.0.1:6379> zadd key1 1 one
    (integer) 1
    127.0.0.1:6379> zadd key1 2 two
    (integer) 1
    127.0.0.1:6379> zadd key1 3 three
    (integer) 1
    127.0.0.1:6379> zrange key1 0 -1
    1) "one"
    2) "two"
    3) "three"
    127.0.0.1:6379> zrange key1 1 2
    1) "two"
    2) "three"
    127.0.0.1:6379>

    4、ZREM 

    ZREM key member [member ...]
    当key存在,但是其不是有序集合类型,就返回一个错误。

    返回值

    返回的是从有序集合中删除的成员个数,不包括不存在的成员

    例子

    127.0.0.1:6379> zrange key1 0 -1
    1) "one"
    2) "two"
    3) "three"
    127.0.0.1:6379> zrem key1 one two
    (integer) 2
    127.0.0.1:6379> zrange key1 0 -1
    1) "three"
    127.0.0.1:6379>

     

  • 相关阅读:
    Windows编程中UNICODE和_UNICODE定义问题
    关于暗时间
    一种简单的图像显著性计算模型
    L2TP连接尝试失败,因为安全层在初始化与远程计算机的协商时遇到了一个处理错误
    L2TP连接尝试失败,因为安全层在初始化与远程计算机的协商时遇到了一个处理错误
    Python正则表达式指南
    【Python】解压文件/ZIP等 并实时计算解压进度
    使用html2canvas和jsPdf实现打印功能
    Windows Phone 7 开发资源汇总
    批量删除数据库中有特定开始字符的表、视图和存储过程
  • 原文地址:https://www.cnblogs.com/beanbag/p/13773948.html
Copyright © 2020-2023  润新知