Skip to content

Ask the HotKV docs

Answers come only from these docs and can be wrong; check the linked pages before you rely on them.

ZDIFF

Last updated
ZDIFF numkeys key [key ...] [WITHSCORES]
Group
Sorted set
Complexity
O(L+(N-K)log(N)) worst case, where L is the total number of input members, N the size of the first set and K the size of the result
Arity
-3 (at least 3 words, counting the command name)
Flags
read-only
HotKV Cloud
All plans
On-Premise
no license needed

ZDIFF returns the members of the first sorted set that do not appear in any of the following ones, ordered by their score in the first set. Scores are not combined: each member keeps its score from the first set.

Inputs can also be plain sets (members score 1), and missing keys count as empty. To store the result instead, use ZDIFFSTORE.

Option Effect
numkeys How many keys follow. Must be at least 1.
WITHSCORES Return each member with its score.
Case RESP2 RESP3
Success Array of members Same
With 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 range if numkeys is not an integer, and ERR at least 1 input key is needed for 'zdiff' command if it is below 1.
  • ERR syntax error if fewer keys follow than numkeys says.
  • WRONGTYPE if a key holds something other than a sorted set or a set.
127.0.0.1:6379> ZADD all 1 "a" 2 "b" 3 "c"
(integer) 3
127.0.0.1:6379> ZADD done 9 "b"
(integer) 1
127.0.0.1:6379> ZDIFF 2 all done WITHSCORES
1) "a"
2) "1"
3) "c"
4) "3"

Same replies as Redis 7.4 and Valkey 8 for valid input. Extra or unrecognised trailing arguments are ignored, where Redis and Valkey reply ERR syntax error.

ZDIFFSTORE, ZINTER, ZUNION, SDIFF