zoukankan      html  css  js  c++  java
  • Redis的有序集合操作命令

    有序集合(zset)就是可以排序的set,通过每个元素关联的score值来为元素进行从小到大的排序,zset中元素不能重复,但是score却可以重复

    设定/修改命令

    zadd key score member [[score member] [score member] ...]

        将一个或多个member元素及其score值加入到key当中
        score值可以是整数值或双精度浮点数
        如果某个member已经是有序集合的成员,那么更新这个member的score值
        如果key不存在,创建一个空的有序集并执行zadd操作
        返回被成功添加的新成员的数量,不包括那些被更新的、已经存在的成员
    

    zincrby key increment member

        为key的成员member的score值加上增量increment(可以为负数)
        key不存在时创建一个空的有序集并执行zincrby操作
        member成员不存在时,创建该成员并设置其score值为0并执行zincrby操作
        返回member成员的新score值(字符串形式)
    

    移除命令

    zrem key member [member ...]:移除key中一个或多个成员,不存在的成员将被忽略。返回被成功移除的成员数量(不包括被忽略的成员)

    zremrangebyrank key start stop:移除key中指定下标区间内(包含start和stop)的所有成员。返回移除成员的数量

    zremrangebyscore key min max:

        移除key中score值在min和max之间(包括mi和max)的成员
        可以给参数min和max前增加"("括号来使结果不包含
        返回移除成员的数量
    

    获取命令

    zrange key start stop [withscores]

        返回key中指定下标(可以为负数)区间内的成员并按score值递增(从小到大)来排序的列表
        具有相同score值的成员按字典序(lexicographical order)来排列
        start大于最大下标或者start>stop,返回空列表
        stop大于最大下标将stop当作最大下标来处理
        withscores选项让成员和它的score值一并返回,返回列表以value1,score1, ..., valueN,scoreN的格式表示
    

    zrevrange key start stop [withscores]:返回key中逆序排序(按score值从大到小)后指定下标(可以为负数)区间内的成员列表

    zrangebyscore key min max [withscores] [limit offset count]

        返回key中score值介于min和max之间(包括min和max)的成员
        min和max可以是-inf(无限大)和+inf(无限小),这样可以在不知道最低和最高score的情况下使用zrangebyscore这类命令
        可选的limit参数指定返回结果的数量及区间
        withscores选项让成员和它的score值一并返回
        默认情况下,包括score值等于min和max的成员,可以给参数min和max前增加"("括号来使结果不包含,如:
        zrangebyscore zset (1 5:返回所有1<score<=5的成员
        zrangebyscore zset (5 (10:返回所有5<score<10的成员
        返回指定区间内的有序集成员的列表
    

    zrevrangebyscore key min max [withscores] [limit offset count]:返回key中score值介于min和max之间(包括min和max)的成员并把这些成员逆序排序(按score值从大到小)

    zscore key member:返回key成员member的score值(字符串形式),如果member元素不是key的成员或key不存在返回nil

    交集并集

    zunionstore destination numkeys key [key ...] [weights weight [weight ...]] [aggregate sum|min|max]

        计算给定的一个或多个有序集的和集(并集)并将该并集(结果集)储存到destination
        numkeys为给定key的数量
        weights选项为每个对应的key分别指定一个乘法因子,对应的key所有成员的score值在传递给聚合函数(aggregate)之前都要先乘以该因子,默认为1
        aggregat选项指定和集(并集)的结果集中score值的聚合方式
            默认为sum,将所有集合中某个相同成员的score值之和作为结果集中该成员的score值;
            min将所有集合中某个相同成员中最小的score值作为结果集中该成员的score值;
            max将所有集合中某个相同成员最大的score值作为结果集中该成员的score值
        返回保存到 destination 的结果集的基数。
    

    zinterstore destination numkeys key [key ...] [weights weight [weight ...]] [aggregate sum|min|max]

        计算给定的一个或多个有序集的交集并将该交集(结果集)储存到destination
        参数的用法和zunionstore相同
    

    其他命令

    zcard key:返回key的基数,key不存在时返回0

    zcount key min max:返回key中score值在min和max之间(包括min和max)的成员的数量

    zrank key member:返回key中成员member的排名(从0开始),如果member不是key的成员返回nil

    zrevrank key member:返回key中成员member逆序排序(按score值从大到小)后的排名(从0开始)

  • 相关阅读:
    linux查看存储盘
    aix中hd5对应什么设备?
    (转)Python 操作 Windows 粘贴板
    eclipse非主窗口的停靠(正常), 恢复, 最小化, 最大化的切换
    (转)HTML5 本地数据库(SQLite) 示例
    [译] 如何像 Python 高手一样编程?
    scrapy递归下载网站
    eclipse快捷键以及使用技巧大全
    python任意编码转utf8或者unicode
    apache快速配置简易网站
  • 原文地址:https://www.cnblogs.com/john-xiong/p/12159095.html
Copyright © 2011-2022 走看看