{ "ZMPOP": { "summary": "Returns the highest- or lowest-scoring members from one or more sorted sets after removing them. Deletes the sorted set if the last member was popped.", "complexity": "O(K) + O(M*log(N)) where K is the number of provided keys, N being the number of elements in the sorted set, and M being the number of elements popped.", "group": "sorted_set", "since": "7.0.0", "arity": -4, "function": "zmpopCommand", "get_keys_function": "zmpopGetKeys", "command_flags": [ "WRITE" ], "acl_categories": [ "SORTEDSET" ], "key_specs": [ { "flags": [ "RW", "ACCESS", "DELETE" ], "begin_search": { "index": { "pos": 1 } }, "find_keys": { "keynum": { "keynumidx": 0, "firstkey": 1, "step": 1 } } } ], "reply_schema": { "oneOf": [ { "description": "No element could be popped.", "type": "null" }, { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "type": "string", "description": "Name of the key that elements were popped." }, { "type": "array", "description": "Popped elements.", "items": { "type": "array", "uniqueItems": true, "minItems": 2, "maxItems": 2, "items": [ { "type": "string", "description": "Name of the member." }, { "type": "number", "description": "Score." } ] } } ] } ] }, "arguments": [ { "name": "numkeys", "type": "integer" }, { "name": "key", "type": "key", "key_spec_index": 0, "multiple": true }, { "name": "where", "type": "oneof", "arguments": [ { "name": "min", "type": "pure-token", "token": "MIN" }, { "name": "max", "type": "pure-token", "token": "MAX" } ] }, { "token": "COUNT", "name": "count", "type": "integer", "optional": true } ] } }