Bird
Raised Fist0
Redisquery~5 mins

ZADD for adding scored members in Redis

Choose your learning style10 modes available
Introduction

ZADD lets you add items with scores to a sorted list in Redis. This helps keep things in order by score.

When you want to keep a leaderboard with player scores.
When you need to store tasks with priorities and get them sorted.
When you want to track items by time or rating and retrieve them in order.
When you want to add new members to a sorted set with their scores.
Syntax
Redis
ZADD key [NX|XX] [CH] [INCR] score member [score member ...]

key is the name of the sorted set.

You add one or more score member pairs to the set.

Examples
Adds 'player1' with score 100 to the 'leaderboard' sorted set.
Redis
ZADD leaderboard 100 player1
Adds two members 'taskA' with score 5 and 'taskB' with score 10 in one command.
Redis
ZADD tasks 5 taskA 10 taskB
Adds 'player2' with score 150 only if 'player2' does not already exist in 'leaderboard'.
Redis
ZADD leaderboard NX 150 player2
Sample Program

This adds three players with scores to the 'leaderboard' and then lists all players with their scores in order.

Redis
ZADD leaderboard 50 Alice
ZADD leaderboard 70 Bob
ZADD leaderboard 60 Charlie
ZRANGE leaderboard 0 -1 WITHSCORES
OutputSuccess
Important Notes

ZADD returns the number of new members added, not counting updated scores.

Scores are numbers and can be decimals.

Use ZRANGE with WITHSCORES to see members and their scores.

Summary

ZADD adds members with scores to a sorted set.

It keeps members sorted by score automatically.

You can add multiple members at once.

Practice

(1/5)
1. What does the Redis command ZADD do?
easy
A. Adds members with scores to a sorted set
B. Deletes members from a sorted set
C. Retrieves all members from a sorted set
D. Creates a new key with a string value

Solution

  1. Step 1: Understand the purpose of ZADD

    The ZADD command is used to add members with associated scores to a sorted set in Redis.
  2. Step 2: Compare with other commands

    Deleting members is done by ZREM, retrieving members by ZRANGE, and creating string keys by SET, so these are not correct.
  3. Final Answer:

    Adds members with scores to a sorted set -> Option A
  4. Quick Check:

    ZADD adds scored members [OK]
Hint: ZADD always adds scored members to sorted sets [OK]
Common Mistakes:
  • Confusing ZADD with ZREM or ZRANGE
  • Thinking ZADD creates string keys
  • Assuming ZADD deletes members
2. Which of the following is the correct syntax to add a member 'player1' with score 100 to a sorted set 'game_scores' using ZADD?
easy
A. ZADD game_scores 100 player1
B. ZADD 100 game_scores player1
C. ZADD game_scores player1 100
D. ZADD player1 100 game_scores

Solution

  1. Step 1: Recall ZADD syntax

    The correct syntax is: ZADD key score member. So the key comes first, then the score, then the member.
  2. Step 2: Match the syntax to options

    ZADD game_scores 100 player1 matches this order: ZADD game_scores 100 player1. Others have wrong order.
  3. Final Answer:

    ZADD game_scores 100 player1 -> Option A
  4. Quick Check:

    ZADD key score member order [OK]
Hint: Remember: ZADD key score member [OK]
Common Mistakes:
  • Swapping score and member positions
  • Putting member before key
  • Using wrong argument order
3. What will be the result of the following commands?
ZADD leaderboard 50 Alice 70 Bob 60 Charlie
ZRANGE leaderboard 0 -1 WITHSCORES
medium
A. ["Bob", "70", "Charlie", "60", "Alice", "50"]
B. ["Alice", "50", "Charlie", "60", "Bob", "70"]
C. ["Alice", "50", "Bob", "70", "Charlie", "60"]
D. ["Charlie", "60", "Alice", "50", "Bob", "70"]

Solution

  1. Step 1: Understand ZADD and ZRANGE behavior

    ZADD adds members with scores. ZRANGE with 0 -1 returns all members sorted by score ascending, WITHSCORES returns scores alongside.
  2. Step 2: Sort members by score ascending

    Scores: Alice=50, Charlie=60, Bob=70. Sorted ascending: Alice, Charlie, Bob.
  3. Final Answer:

    ["Alice", "50", "Charlie", "60", "Bob", "70"] -> Option B
  4. Quick Check:

    ZRANGE sorts ascending by score [OK]
Hint: ZRANGE returns members sorted by score ascending [OK]
Common Mistakes:
  • Assuming ZRANGE sorts by insertion order
  • Mixing up ascending and descending order
  • Ignoring WITHSCORES option
4. Identify the error in this Redis command: ZADD myset player1 100
medium
A. ZADD cannot add members with numeric scores
B. The key name 'myset' is invalid
C. The score and member are reversed; score must come before member
D. The command is correct and will work as expected

Solution

  1. Step 1: Check ZADD argument order

    ZADD syntax requires the key first, then the score, then the member. Here, 'player1' is before '100', which is reversed.
  2. Step 2: Validate other options

    Key name 'myset' is valid, numeric scores are allowed, so options B and C are incorrect. The command is not correct, so D is wrong.
  3. Final Answer:

    The score and member are reversed; score must come before member -> Option C
  4. Quick Check:

    ZADD requires score before member [OK]
Hint: Score always comes before member in ZADD [OK]
Common Mistakes:
  • Swapping score and member positions
  • Thinking key name is invalid
  • Believing numeric scores are disallowed
5. You want to add multiple players with their scores to a sorted set 'ranking' in one command. Which command correctly adds 'Anna' with 85, 'Ben' with 90, and 'Cara' with 80?
hard
A. ZADD ranking Anna 85 Ben 90 Cara 80
B. ZADD ranking Cara 80 85 Anna 90 Ben
C. ZADD ranking 85 Anna Cara 80 90 Ben
D. ZADD ranking 85 Anna 90 Ben 80 Cara

Solution

  1. Step 1: Recall ZADD syntax for multiple members

    ZADD syntax allows multiple score-member pairs: ZADD key score1 member1 score2 member2 ...
  2. Step 2: Match pairs correctly

    ZADD ranking 85 Anna 90 Ben 80 Cara lists pairs as 85 Anna, 90 Ben, 80 Cara, matching the players and scores in the order given.
  3. Final Answer:

    ZADD ranking 85 Anna 90 Ben 80 Cara -> Option D
  4. Quick Check:

    ZADD multiple pairs as score member [OK]
Hint: List pairs as score then member repeatedly [OK]
Common Mistakes:
  • Swapping member and score order
  • Mixing up pairs order
  • Using inconsistent score-member pairs
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard