HRANDFIELD to get one or more random fields from a hash.
Without a count a single field name is returned, or null when the key does not exist. A positive count returns up to that many distinct fields, capped at the size of the hash, while a negative count returns exactly that many fields chosen independently, so the same field can come up more than once. WITHVALUES returns each field together with its value.
Nothing is removed from the hash, which is the difference from HGETDEL: use this for sampling, random selection, and quick inspection of an unfamiliar hash.
Syntax
Arguments
Important points
- Pair-based results may be flattened into one alternating array in RESP2 while RESP3 preserves nested pairs or a map.
Response
The reply reports the result of the operation. Error replies have the same shape in RESP2 and RESP3 and are surfaced as exceptions by the SDKs below.Client libraries often decode bulk strings, maps, sets, and numeric strings into language-native values. The table describes the Redis wire reply.
Examples
TCP examples use the TLSREDIS_URL from the Upstash console. REST examples use UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN.
Redis CLI
Redis CLI
@upstash/redis
@upstash/redis
upstash_redis
upstash_redis
ioredis
ioredis
node-redis
node-redis
redis-py
redis-py
go-redis
go-redis
jedis
jedis
redis-rs
redis-rs