*Redis ZUNION 命令 返回多个有序集合的并集
*语法
ZUNION numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM | MIN | MAX] [WITHSCORES]
*说明
计算多个有序集合的并集,并返回结果成员。
选项:
WEIGHTS:权重系数AGGREGATE:score 计算方式(SUM/MIN/MAX)WITHSCORES:返回 score
*返回值
- 数组:并集结果中的成员列表
*时间复杂度
- O(N)+O(M*log(M)),其中
N是所有集合成员总数,M是结果数量。
*版本兼容性
| Redis 版本 | 变更说明 |
|---|---|
| >= 6.2.0 | 可用 |
*示例
redis-cli ZADD zset1 1 "a" 2 "b" 3 "c"
redis-cli ZADD zset2 1 "a" 2 "d" 4 "e"
# 基本并集
redis-cli ZUNION 2 zset1 zset2
# 带 score 的并集
redis-cli ZUNION 2 zset1 zset2 WITHSCORES
# 带权重的并集(SUM 为默认)
redis-cli ZUNION 2 zset1 zset2 WEIGHTS 2 3 WITHSCORES
# 使用 MAX 聚合
redis-cli ZUNION 2 zset1 zset2 AGGREGATE MAX WITHSCORES