Bird
Raised Fist0
Redisquery~5 mins

ZINCRBY for score updates in Redis

Choose your learning style10 modes available
Introduction

ZINCRBY helps you add or subtract points from a member's score in a sorted set easily.

You want to update a player's score in a game leaderboard.
You need to increase the count of how many times a user performed an action.
You want to adjust rankings based on new events or data.
You want to keep track of points earned by users over time.
You want to add bonus points to a member in a rewards program.
Syntax
Redis
ZINCRBY key increment member
The key is the name of the sorted set.
The increment is the number to add (can be negative to subtract).
The member is the item whose score you want to update.
Examples
Adds 10 points to player1's score in the leaderboard.
Redis
ZINCRBY leaderboard 10 player1
Subtracts 5 points from player2's score in the leaderboard.
Redis
ZINCRBY leaderboard -5 player2
Adds 1.5 points to user123's score in the scores set.
Redis
ZINCRBY scores 1.5 user123
Sample Program

This example first adds player1 with 50 points. Then it adds 20 more points to player1. It subtracts 10 points from player2 (who is not yet in the set, so player2 is added with score -10). Finally, it lists all players with their scores.

Redis
ZADD leaderboard 50 player1
ZINCRBY leaderboard 20 player1
ZINCRBY leaderboard -10 player2
ZRANGE leaderboard 0 -1 WITHSCORES
OutputSuccess
Important Notes

If the member does not exist, ZINCRBY adds it with the increment as its score.

You can use negative increments to reduce scores.

Scores can be floating point numbers.

Summary

ZINCRBY updates a member's score by adding a number.

It creates the member if it does not exist.

Use it to keep scores or rankings updated easily.

Practice

(1/5)
1.

What does the Redis command ZINCRBY do?

easy
A. It creates a new sorted set without any members.
B. It increases the score of a member in a sorted set by a given amount.
C. It returns the rank of a member in a sorted set.
D. It deletes a member from a sorted set.

Solution

  1. Step 1: Understand the purpose of ZINCRBY

    ZINCRBY is used to increase the score of a member in a sorted set by a specified increment.
  2. Step 2: Compare with other options

    Other options describe different commands: deletion, rank retrieval, or creation, which are not what ZINCRBY does.
  3. Final Answer:

    It increases the score of a member in a sorted set by a given amount. -> Option B
  4. Quick Check:

    ZINCRBY increments score of member [OK]
Hint: ZINCRBY always adds to a member's score in sorted sets [OK]
Common Mistakes:
  • Confusing ZINCRBY with ZREM (removal)
  • Thinking it returns rank instead of updating score
  • Assuming it creates a new sorted set without members
2.

Which of the following is the correct syntax to increase the score of member user1 by 5 in sorted set leaderboard?

?
easy
A. ZINCRBY leaderboard 5 user1
B. ZINCRBY leaderboard user1 5
C. ZINCRBY 5 leaderboard user1
D. ZINCRBY user1 leaderboard 5

Solution

  1. Step 1: Recall ZINCRBY syntax

    The correct syntax is: ZINCRBY key increment member.
  2. Step 2: Match syntax with options

    ZINCRBY leaderboard 5 user1 matches the correct order: ZINCRBY leaderboard 5 user1.
  3. Final Answer:

    ZINCRBY leaderboard 5 user1 -> Option A
  4. Quick Check:

    Command order = ZINCRBY key increment member [OK]
Hint: Remember: ZINCRBY key increment member [OK]
Common Mistakes:
  • Swapping member and increment positions
  • Putting member before key
  • Using increment before key
3.

Given the following Redis commands executed in order:

ZINCRBY scores 10 alice
ZINCRBY scores 5 bob
ZINCRBY scores -3 alice
ZINCRBY scores 2 charlie

What is the score of alice after these commands?

medium
A. 7
B. 10
C. 12
D. -3

Solution

  1. Step 1: Calculate alice's score changes

    First increment: +10, then decrement: -3, total = 10 - 3 = 7.
  2. Step 2: Confirm final score

    Other members' scores do not affect alice's score.
  3. Final Answer:

    7 -> Option A
  4. Quick Check:

    10 - 3 = 7 [OK]
Hint: Add increments for the same member to get final score [OK]
Common Mistakes:
  • Ignoring negative increments
  • Adding scores of other members
  • Using only the first increment
4.

What is wrong with this Redis command to increase user2's score by 4 in sorted set game_scores?

ZINCRBY game_scores user2 4
medium
A. The increment value must be negative.
B. The key name is missing.
C. The command should be ZADD instead of ZINCRBY.
D. The increment and member arguments are swapped.

Solution

  1. Step 1: Check argument order for ZINCRBY

    ZINCRBY syntax is: ZINCRBY key increment member. Here, 'user2' and '4' are swapped.
  2. Step 2: Identify the error

    The command should be: ZINCRBY game_scores 4 user2.
  3. Final Answer:

    The increment and member arguments are swapped. -> Option D
  4. Quick Check:

    Order must be key, increment, member [OK]
Hint: Increment always comes before member in ZINCRBY [OK]
Common Mistakes:
  • Swapping increment and member
  • Using ZADD instead of ZINCRBY for increment
  • Thinking increment must be negative
5.

You have a sorted set ranking with members and scores:

"alice" 15
"bob" 20
"carol" 10

You want to increase carol's score by 12 and decrease bob's score by 5 using Redis commands. Which sequence of commands correctly updates the scores?

hard
A. ZADD ranking 22 carol ZADD ranking 15 bob
B. ZINCRBY ranking carol 12 ZINCRBY ranking bob -5
C. ZINCRBY ranking 12 carol ZINCRBY ranking -5 bob
D. ZINCRBY ranking 5 carol ZINCRBY ranking -12 bob

Solution

  1. Step 1: Apply correct ZINCRBY syntax for increments

    To increase carol's score by 12: ZINCRBY ranking 12 carol.
  2. Step 2: Apply correct ZINCRBY syntax for decrement

    To decrease bob's score by 5: ZINCRBY ranking -5 bob.
  3. Step 3: Verify other options

    ZINCRBY ranking carol 12 ZINCRBY ranking bob -5 swaps increment and member, ZADD ranking 22 carol ZADD ranking 15 bob uses ZADD which replaces scores, ZINCRBY ranking 5 carol ZINCRBY ranking -12 bob uses wrong increments.
  4. Final Answer:

    ZINCRBY ranking 12 carol ZINCRBY ranking -5 bob -> Option C
  5. Quick Check:

    Use ZINCRBY with positive and negative increments [OK]
Hint: Use positive or negative increments with ZINCRBY to adjust scores [OK]
Common Mistakes:
  • Swapping member and increment arguments
  • Using ZADD which overwrites scores instead of incrementing
  • Using wrong increment values
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