SPOP
Syntax
SPOP key [count]
- Available since:
- 1.0.0
- Time complexity:
- Without the count argument O(1), otherwise O(N) where N is the value of the passed count.
- ACL categories:
-
@write
,@set
,@fast
,
从存储在key
的集合值中移除并返回一个或多个随机成员。
此操作类似于SRANDMEMBER
,它从集合中返回一个或多个随机元素但不移除它。
默认情况下,该命令从集合中弹出一个成员。当提供可选的count
参数时,回复将包含最多count
个成员,具体取决于集合的基数。
示例
返回元素的分布
请注意,当您需要保证返回元素的均匀分布时,此命令不适用。有关SPOP
使用的算法的更多信息,请查阅Knuth采样和Floyd采样算法。
RESP2 回复
以下之一:
- Nil reply: 如果键不存在。
- Bulk string reply: 当调用时没有count参数时,被移除的成员。
- Array reply: 当使用count参数调用时,返回被移除成员的列表。
RESP3 回复
以下之一:
- Null reply: 如果键不存在。
- Bulk string reply: 当调用时没有count参数时,被移除的成员。
- Array reply: 当使用 count 参数调用时,返回被移除成员的列表。
历史
- 从 Redis 版本 3.2.0 开始:添加了
count
参数。