ZRANDMEMBER
ZRANDMEMBER key [count [WITHSCORES]]
- Group
- Sorted set
- Complexity
- O(N) where N is the number of members returned
- Arity
- -2 (at least 2 words, counting the command name)
- Flags
- read-only
- Keys
- first 1, last 1, step 1
- HotKV Cloud
- All plans
- On-Premise
- no license needed
ZRANDMEMBER picks random members from the sorted set at key without
changing it.
- Without
count, it returns one random member. - With a positive
count, it returns up tocountdistinct members. If the sorted set hascountmembers or fewer, you get all of them. - With a negative
count, it returns exactly|count|members, and the same member can appear more than once. - A
countof0returns an empty array.
Options
Section titled “Options”| Option | Effect |
|---|---|
count |
How many members to return, as described above. |
WITHSCORES |
Return each member with its score. Only valid after count. |
count and WITHSCORES are checked before the key is looked up.
Return value
Section titled “Return value”| Case | RESP2 | RESP3 |
|---|---|---|
No count |
Bulk string: a member, or nil bulk string if the key does not exist | Bulk string, or null |
With count |
Array of members (empty if the key does not exist) | Same |
With count and WITHSCORES |
Flat array: member, score, … (scores as bulk strings) | Array of [member, score] pairs, the score a double |
Errors:
ERR value is not an integer or out of rangeifcountis not an integer.ERR value is out of range, value must between -9223372036854775807 and 9223372036854775807for acountof -9223372036854775808.ERR syntax errorif the third argument is notWITHSCORESor there are extra arguments.ERR count is too large, the reply would exceed 512 MBif a negativecountwould build a reply larger than 512 MB.WRONGTYPEifkeyholds a value that is not a sorted set.
Examples
Section titled “Examples”127.0.0.1:6379> ZADD board 1 "a" 2 "b" 3 "c"(integer) 3127.0.0.1:6379> ZRANDMEMBER board"b"127.0.0.1:6379> ZRANDMEMBER board 2 WITHSCORES1) "c"2) "3"3) "a"4) "1"127.0.0.1:6379> ZRANDMEMBER board -31) "a"2) "a"3) "c"The members you get back are random, so your output will differ.
Compatibility
Section titled “Compatibility”Same as Redis 7.4 and Valkey 8.
See also
Section titled “See also”Was this page helpful?
Thanks for the feedback.