ZMPOP

语法
ZMPOP numkeys key [key ...] <MIN | MAX> [COUNT count]
可用版本
Redis 开源版 7.0.0
时间复杂度
O(K) + O(M*log(N)),其中 K 是提供的键的数量,N 是有序集合中的元素数量,M 是弹出的元素数量。
ACL 类别
@write, @sortedset, @slow,

从提供的键名列表中第一个非空的有序集合中弹出(移除)一个或多个成员-分值对。

ZMPOPBZMPOP 类似于以下限制较多的命令:

  • ZPOPMINZPOPMAX,它们只接受一个键,可以返回多个元素。
  • BZPOPMINBZPOPMAX,它们接受多个键,但只从其中一个键返回一个元素。

请参阅 BZMPOP 命令的阻塞版本。

使用 MIN 修饰符时,弹出的元素是来自第一个非空有序集合中得分最低的元素。MAX 修饰符会弹出得分最高的元素。可选的 COUNT 可以用来指定要弹出的元素数量,默认为 1。

弹出的元素数量是有序集合的基数和 COUNT 值的最小值。

示例

ZMPOP 1 notsuchkey MIN ZADD myzset 1 "one" 2 "two" 3 "three" ZMPOP 1 myzset MIN ZRANGE myzset 0 -1 WITHSCORES ZMPOP 1 myzset MAX COUNT 10 ZADD myzset2 4 "four" 5 "five" 6 "six" ZMPOP 2 myzset myzset2 MIN COUNT 10 ZRANGE myzset 0 -1 WITHSCORES ZMPOP 2 myzset myzset2 MAX COUNT 10 ZRANGE myzset2 0 -1 WITHSCORES EXISTS myzset myzset2

RESP2 回复

以下之一:

  • Nil 回复:没有元素可弹出时。
  • 数组回复:一个包含两个元素的数组,第一个元素是弹出元素的键名,第二个元素是被弹出的元素的数组。元素数组中的每个条目也是一个数组,包含成员及其分值。

RESP3 回复

以下之一:

  • Null 回复:没有元素可弹出时。
  • 数组回复:一个包含两个元素的数组,第一个元素是弹出元素的键名,第二个元素是被弹出的元素的数组。元素数组中的每个条目也是一个数组,包含成员及其分值。

评价本页
返回顶部 ↑