SPOP
语法
SPOP key [count]
- 从以下位置开始可用:
- 1.0.0
- 时间复杂度:
- 如果没有 count 参数 O(1),否则为 O(N),其中 N 是传递的 count 的值。
- ACL 类别:
-
@write
,@set
,@fast
,
从 set value store 中删除并返回一个或多个随机成员key
.
此作类似于SRANDMEMBER
,该函数会从集合中返回一个或多个随机元素,但不会将其删除。
默认情况下,该命令从集中弹出单个成员。当提供
可选的count
参数,则 Reply 将包含最多count
成员
取决于 Set 的基数。
例子
返回元素的分布
请注意,当您需要保证返回元素的均匀分布时,此命令不适用。有关用于SPOP
中,请查找 Knuth 采样算法和 Floyd 采样算法。
RESP2 回复
以下选项之一:
- nil 回复:如果密钥不存在。
- 批量字符串回复:在没有 count 参数的情况下调用时,已删除的成员。
- Array reply:使用 count 参数调用时,已删除成员的列表。
RESP3 回复
以下选项之一:
- Null 回复:如果 key 不存在。
- 批量字符串回复:在没有 count 参数的情况下调用时,已删除的成员。
- Array reply:使用 count 参数调用时,已删除成员的列表。
历史
- 从 Redis 版本 3.2.0 开始:添加了
count
论点。