redis有序集合系列之四

21 篇文章 0 订阅

目录

 

zunionstore

zinterstore


zunionstore

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

2.解析
计算给定的一个或多个有序集的并集,其中给定key的数量必须以numkeys参数指定
并将该并集存储到destination
默认情况下,结果集中某个成员的score值是所有给定集下该成员值之和
weights
使用weights选项,你可以为每个给定有序集分别指定一个乘法因子,每个给定有序集的所有成员的score值传递给聚合函数之前都要先乘以该有序集的因子

如果没有指定weights选项,乘法因子默认设置为1
aggregate
使用aggregate选项,你可以指定并集的结果集的聚合方式
默认使用的参数sum,可以将所有集合中某个成员的score值之和作为结果集中该成员的score值
使用参数min,可以将所有集合中某个成员的最小score值作为结果集中该成员的score
参数max则是将所有集合中某个成员的最大score值作为结果集中该成员的score值
3.返回值
保存到destination的结果集的基数
4.例子

zadd pro 2000 peter 3500 jack 5000 tom
zadd man 2000 herry 3500 mary 4000 bob
zrange pro 0 -1 withscires
zrange man 0 -1 withscores
zunionstore salary 2 man pro weight 1 3//man 集合的score乘以1 pro集合score乘以3


zinterstore

1.语法
zinterstore destination numkeys key [key...][weight weight [weight...]][agreegate sum|min|max]

2.解析
计算给定的一个或多个有序集的交集,其中给定key的数量必须以numkeys参数指定,
并将该并集存储到destination。
默认情况下,结果集中某个成员的score值是所有给定集下该成员值之和。
3.返回值
保存到destination的结果集的基数.
4.例子

zadd mid 70 "Li" 70 "Han" 99 "Tom"
zadd fin 88 "Li" 75 "H" 99 "Tom"
zinterstore sum 2 mid fin
zrange sum 0 -1 withscores


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值