Redis ZINTERSTORE 命令
Redis ZINTERSTORE 命令计算给定的一个或多个有序集的交集,其中给定 key 的数量必须以 numkeys 参数指定,并将该交集(结果集)储存到 destination 。
( Redis >= 2.0.0 )
默认情况下,结果集中某个成员的分数值是所有给定集下该成员分数值之和。
语法
Redis ZINTERSTORE 命令基本语法如下:
127.0.0.1:6379> ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
返回值
保存到目标结果集的的成员数量。
范例
127.0.0.1:6379> FLUSHALL OK # 有序集 site_n 127.0.0.1:6379> ZADD site_n 9.8 "tencent.com" (integer) 1 127.0.0.1:6379> ZADD site_n 8.7 "baidu.com" (integer) 1 127.0.0.1:6379> ZADD site_n 9.5 "taobao.com" (integer) 1 # 另一个有序集 site_f 127.0.0.1:6379> ZADD site_f 8.5 "xiaomi.com" (integer) 1 127.0.0.1:6379> ZADD site_f 8.7 "baidu.com" (integer) 1 127.0.0.1:6379> ZADD site_f 9.8 "tencent.com" (integer) 1 # 交集 127.0.0.1:6379> ZINTERSTORE sum_site 2 site_n site_f (integer) 2 # 显示有序集内所有成员及其分数值 127.0.0.1:6379> ZRANGE sum_site 0 -1 WITHSCORES 1) "baidu.com" 2) "17.399999999999999" 3) "tencent.com" 4) "19.600000000000001"