Bird
Raised Fist0
Redisquery~5 mins

Top-N queries in Redis - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a Top-N query in Redis?
A Top-N query in Redis retrieves the top N elements from a sorted set based on their scores, usually to find the highest or lowest ranked items.
Click to reveal answer
beginner
Which Redis data structure is commonly used for Top-N queries?
Sorted Sets (ZSET) are used because they store elements with scores, allowing efficient retrieval of top N elements by score order.
Click to reveal answer
beginner
How do you get the top 5 highest scored elements from a sorted set named 'leaderboard' in Redis?
Use the command: ZREVRANGE leaderboard 0 4 WITHSCORES. This gets elements with highest scores first, from rank 0 to 4.
Click to reveal answer
beginner
What does the Redis command ZREVRANGE do?
ZREVRANGE returns elements in a sorted set ordered from highest to lowest score, useful for Top-N queries to get top scoring items.
Click to reveal answer
intermediate
Why is using sorted sets efficient for Top-N queries in Redis?
Because sorted sets keep elements ordered by score, Redis can quickly return the top N elements without scanning the entire set.
Click to reveal answer
Which Redis command retrieves the top N elements with the highest scores from a sorted set?
AZREVRANGE
BZRANGE
CZADD
DZREM
What data structure should you use in Redis to perform Top-N queries?
AList
BHash
CString
DSorted Set
If you want the top 3 lowest scored elements in Redis, which command would you use?
AZREVRANGE key 0 2
BZADD key 0 2
CZRANGE key 0 2
DZREM key 0 2
What does the WITHSCORES option do in ZREVRANGE or ZRANGE commands?
ADeletes the scores
BReturns elements with their scores
CReturns elements only
DAdds new elements
Why are Top-N queries fast in Redis sorted sets?
ABecause sorted sets keep elements ordered by score
BBecause Redis scans all elements
CBecause Redis uses hash tables
DBecause Redis stores data on disk
Explain how you would retrieve the top 10 highest scoring players from a Redis leaderboard using sorted sets.
Think about commands that return elements ordered by score descending.
You got /4 concepts.
    Describe why sorted sets are suitable for Top-N queries in Redis compared to other data structures.
    Consider how ordering and score storage help performance.
    You got /4 concepts.

      Practice

      (1/5)
      1. What Redis command is used to get the top N highest scores from a sorted set?
      easy
      A. ZRANGE
      B. ZREVRANGE
      C. ZADD
      D. ZREM

      Solution

      1. Step 1: Understand sorted set ordering

        Redis sorted sets store elements with scores. To get highest scores, we want descending order.
      2. Step 2: Identify the correct command

        ZREVRANGE returns elements in descending order by score, perfect for top N queries.
      3. Final Answer:

        ZREVRANGE -> Option B
      4. Quick Check:

        Top N highest = ZREVRANGE [OK]
      Hint: Use ZREVRANGE for top scores in descending order [OK]
      Common Mistakes:
      • Using ZRANGE which returns lowest scores first
      • Confusing ZADD (adds elements) with query commands
      • Using ZREM which removes elements
      2. Which of the following is the correct syntax to get the top 3 highest scoring members from sorted set players?
      easy
      A. ZREVRANGE players 1 3
      B. ZRANGE players 0 2
      C. ZREVRANGE players 0 2
      D. ZRANGE players -3 -1

      Solution

      1. Step 1: Understand index ranges in ZREVRANGE

        Indexes start at 0. To get top 3, use 0 to 2 inclusive.
      2. Step 2: Choose correct command and range

        ZREVRANGE returns highest scores first. So ZREVRANGE players 0 2 gets top 3.
      3. Final Answer:

        ZREVRANGE players 0 2 -> Option C
      4. Quick Check:

        Top 3 highest = ZREVRANGE players 0 2 [OK]
      Hint: Use 0 to N-1 indexes with ZREVRANGE for top N [OK]
      Common Mistakes:
      • Using ZRANGE which returns lowest scores
      • Starting index at 1 instead of 0
      • Using negative indexes incorrectly
      3. Given a sorted set scores with members and scores: {"alice": 50, "bob": 70, "carol": 60}, what is the result of ZREVRANGE scores 0 1 WITHSCORES?
      medium
      A. ["carol", "60", "alice", "50"]
      B. ["alice", "50", "carol", "60"]
      C. ["bob", "70", "alice", "50"]
      D. ["bob", "70", "carol", "60"]

      Solution

      1. Step 1: Order members by descending score

        Scores descending: bob(70), carol(60), alice(50).
      2. Step 2: Select top 2 with scores

        ZREVRANGE 0 1 returns first two: bob and carol with their scores.
      3. Final Answer:

        ["bob", "70", "carol", "60"] -> Option D
      4. Quick Check:

        Top 2 with scores = bob(70), carol(60) [OK]
      Hint: ZREVRANGE 0 N-1 gets top N in descending order [OK]
      Common Mistakes:
      • Mixing ascending and descending order
      • Forgetting WITHSCORES returns pairs
      • Selecting wrong index range
      4. You run ZREVRANGE leaderboard 0 4 but get an empty list. What is the most likely cause?
      medium
      A. The sorted set leaderboard does not exist or is empty
      B. The command syntax is incorrect
      C. ZREVRANGE only works with hashes, not sorted sets
      D. The indexes 0 to 4 are out of range for the sorted set

      Solution

      1. Step 1: Check command syntax validity

        ZREVRANGE syntax is correct for sorted sets, so syntax is not the issue.
      2. Step 2: Understand empty result causes

        If the sorted set does not exist or is empty, ZREVRANGE returns an empty list.
      3. Final Answer:

        The sorted set leaderboard does not exist or is empty -> Option A
      4. Quick Check:

        Empty result means no data in sorted set [OK]
      Hint: Empty list means sorted set missing or empty [OK]
      Common Mistakes:
      • Assuming syntax error without checking data
      • Thinking ZREVRANGE works on hashes
      • Believing index out of range causes error instead of empty list
      5. You want to get the top 5 players with the lowest scores from a sorted set game_scores. Which command should you use?
      hard
      A. ZRANGE game_scores 0 4
      B. ZRANGE game_scores -5 -1
      C. ZREVRANGE game_scores -5 -1
      D. ZREVRANGE game_scores 0 4

      Solution

      1. Step 1: Identify order for lowest scores

        ZRANGE returns elements in ascending order by score, so lowest scores first.
      2. Step 2: Select correct range for top 5

        Indexes 0 to 4 select first 5 elements, which are lowest scores.
      3. Final Answer:

        ZRANGE game_scores 0 4 -> Option A
      4. Quick Check:

        Lowest 5 scores = ZRANGE 0 4 [OK]
      Hint: Use ZRANGE 0 N-1 for lowest N scores [OK]
      Common Mistakes:
      • Using ZREVRANGE which returns highest scores
      • Using negative indexes incorrectly
      • Confusing ascending and descending order
      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