zoukankan      html  css  js  c++  java
  • Zset-ZUNIONSTORE

    ZUNIONSTORE destination numkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]
    可用版本:>= 2.0.0
    时间复杂度: O(N)+O(M log(M)), N 为给定有序集基数的总和, M 为结果集的基数。
    计算给定的一个或多个有序集的并集,其中给定 key 的数量必须以 numkeys 参数指定,并将该并集(结果集)储存到 destination 。
    默认情况下,结果集中某个成员的 score 值是所有给定集下该成员 score 值之 和 。
     
    WEIGHTS
    使用 WEIGHTS 选项,你可以为 每个 给定有序集 分别 指定一个乘法因子(multiplication factor),每个给定有序集的所有成员的 score 值在传递给聚合函数(aggregation function)之前都要先乘以该有序集的因子。
    如果没有指定 WEIGHTS 选项,乘法因子默认设置为 1 。
     
    AGGREGATE
    使用 AGGREGATE 选项,你可以指定并集的结果集的聚合方式。
    默认使用的参数 SUM ,可以将所有集合中某个成员的 score 值之 和 作为结果集中该成员的 score 值;使用参数 MIN ,可以将所有集合中某个成员的 最小 score 值作为结果集中该成员的 score 值;而参数 MAX 则是将所有集合中某个成员的 最大 score 值作为结果集中该成员的 score 值。
     
    返回值
    保存到 destination 的结果集的基数。
     
    代码示例
    redis> ZRANGE programmer 0 -1 WITHSCORES
    1) "peter"
    2) "2000"
    3) "jack"
    4) "3500"
    5) "tom"
    6) "5000"
    
    redis> ZRANGE manager 0 -1 WITHSCORES
    1) "herry"
    2) "2000"
    3) "mary"
    4) "3500"
    5) "bob"
    6) "4000"
    
    redis> ZUNIONSTORE salary 2 programmer manager WEIGHTS 1 3   # 公司决定加薪。。。除了程序员。。。
    (integer) 6
    
    redis> ZRANGE salary 0 -1 WITHSCORES
    1) "peter"
    2) "2000"
    3) "jack"
    4) "3500"
    5) "tom"
    6) "5000"
    7) "herry"
    8) "6000"
    9) "mary"
    10) "10500"
    11) "bob"
    12) "12000"
     
    作者:红雨
    出处:https://www.cnblogs.com/52why
    微信公众号: 红雨python
  • 相关阅读:
    Java调用存储过程
    Eclipse快捷键
    [转载]实现GridView手动设定分页
    给博客换了个皮肤
    在Hibernate中使用Oracle的sequence主键
    解决Oracle 10g中The account lockde!
    [转载]CSS的优化与技巧
    PowerDesigner12 简单应用
    【转载】用开源软件搭建企业内部协作平台, Kill QQ MSN
    DropDownList数据绑定第一项为空
  • 原文地址:https://www.cnblogs.com/52why/p/14339346.html
Copyright © 2011-2022 走看看