目录搜索
Clustercluster addslots(集群 槽位)cluster count failure reports(集群计数失败报告)cluster countkeysinslotcluster delslotscluster failovercluster forgetcluster getkeysinslotcluster infocluster keyslot(集群键槽)cluster meetcluster nodes(集群节点)cluster replicate(集群复制)cluster reset(集群重置)cluster saveconfigcluster set config epochcluster setslotcluster slavescluster slotsreadonlyreadwriteConnectionauthechopingquitselectswapdbGeogeoaddgeodistgeohashgeoposgeoradiusgeoradiusbymemberHasheshdelhexistshgethgetallhincrbyhincrbyfloathkeyshlenhmgethmsethscanhsethsetnxhstrlenhvalsHyperLogLogpfaddpfcountpfmergeKeysdeldumpexistsexpireexpireatkeysmigratemoveobjectpersistpexpirepexpireatpttlrandomkeyrenamerenamenxrestorescansorttouchttltypeunlinkwaitListsblpopbrpopbrpoplpushlindexlinsertllenlpoplpushlpushxlrangelremlsetltrimrpoprpoplpushrpushrpushxPub/SubpsubscribepublishpubsubpunsubscribesubscribeunsubscribeScriptingevalevalshascript debugscript existsscript flushscript killscript loadServerbgrewriteaofbgsaveclient getnameclient killclient listclient pauseclient replyclient setnamecommandcommand countcommand getkeyscommand infoconfig getconfig resetstatconfig rewriteconfig setdbsizedebug objectdebug segfaultflushallflushdbinfolastsavemonitorrolesaveshutdownslaveofslowlogtimeSetssaddscardsdiffsdiffstoresintersinterstoresismembersmemberssmovespopsrandmembersremsscansunionsunionstoreSorted SetszaddzcardzcountzincrbyzinterstorezlexcountzrangezrangebylexzrangebyscorezrankzremzremrangebylexzremrangebyrankzremrangebyscorezrevrangezrevrangebylexzrevrangebyscorezrevrankzscanzscorezunionstoreStringsappendbitcountbitfieldbitopbitposdecrdecrbygetgetbitgetrangegetsetincrincrbyincrbyfloatmgetmsetmsetnxpsetexsetsetbitsetexsetnxsetrangestrlenTransactionsdiscardexecmultiunwatchwatch
文字

SPOP key [count]

自1.0.0起可用。

时间复杂度: O(1)

从设置值存储中移除并返回一个或多个随机元素key

该操作与 SRANDMEMBER 相似,它返回一个或多个随机元素,但不会将其删除。

count参数自 3.2 版开始可用。

返回值

批量字符串回复:已移除的元素或nil何时key不存在。

例子

redis>  SADD myset "one" (integer) 1 

redis>  SADD myset "two" (integer) 1 

redis>  SADD myset "three" (integer) 1 

redis>  SPOP myset "one" 

redis>  SMEMBERS myset 1) "two" 2) "three"

redis>  SADD myset "four" (integer) 1 

redis>  SADD myset "five" (integer) 1 

redis>  SPOP myset 3 1) "four" 2) "three" 3) "five" 

redis>  SMEMBERS myset 1) "two"

计数通过时的行为规范

如果 count 大于 Set 内部的元素数量,则该命令将只返回整个集合而不包含其他元素。

返回元素的分配

请注意,当您需要保证返回元素的均匀分布时,此命令不适用。有关用于 SPOP 的算法的更多信息,请查找 Knuth 采样和 Floyd 采样算法。

计数参数扩展

Redis 3.2引入了一个可选count参数,可以传递给 SPOP 以便在一次调用中检索多个元素。

上一篇:下一篇: