PFADD

用法
PFADD key [ element ] [ [ element ] ... ]
复杂度
添加每个元素的复杂度为 O(1)。
起始版本
2.8.9
ACL 类别
@hyperloglog, @write, @fast

将所有元素参数添加到存储在第一个参数指定的变量名处的 HyperLogLog 数据结构中。

作为此命令的副作用,HyperLogLog 内部可能会更新,以反映到目前为止添加的唯一项数量(集合的基数)的不同估算。

如果在执行命令后,HyperLogLog 估算的近似基数发生变化,PFADD 返回 1,否则返回 0。如果指定的键不存在,命令会自动创建一个空的 HyperLogLog 结构(即,一个指定长度和给定编码的字符串)。

在不带元素而只带变量名的情况下调用此命令是有效的。如果变量已存在,这将导致不执行任何操作;如果键不存在,则仅创建数据结构(在后一种情况下返回 1)。

有关 HyperLogLog 数据结构的介绍,请查阅 PFCOUNT 命令页面。

示例

127.0.0.1:6379> PFADD hll a b c d e f g
(integer) 1
127.0.0.1:6379> PFCOUNT hll
(integer) 7

RESP2/RESP3 回复

以下之一

  • 整数回复:如果至少一个 HyperLogLog 内部寄存器被修改,则返回 1

  • 整数回复:如果没有 HyperLogLog 内部寄存器被修改,则返回 0