📖 Scenario: You are managing a Redis database that stores a list of recent user actions on a website. You want to read specific parts of this list to analyze user behavior.
🎯 Goal: Build a Redis command sequence that creates a list of user actions, sets a range to read, and uses LRANGE to retrieve the specified elements from the list.
📋 What You'll Learn
Create a Redis list called user_actions with these exact elements in order: login, view_page, click_ad, logout
Create a variable called start_index and set it to 1
Create a variable called end_index and set it to 2
Use the LRANGE command with user_actions, start_index, and end_index to read the elements from the list
💡 Why This Matters
🌍 Real World
Reading parts of a list in Redis is useful for analyzing recent user activity, logs, or messages stored in order.
💼 Career
Many jobs require working with Redis lists to efficiently retrieve subsets of data for real-time applications.
Progress0 / 4 steps
1
Create the Redis list user_actions
Use the RPUSH command to create a Redis list called user_actions with these elements in this order: login, view_page, click_ad, logout.
Redis
Hint
Use RPUSH to add multiple elements to the list in the given order.
2
Set the start_index variable
Create a variable called start_index and set it to 1 to mark the starting position for reading the list.
Redis
Hint
Assign the value 1 to the variable start_index.
3
Set the end_index variable
Create a variable called end_index and set it to 2 to mark the ending position for reading the list.
Redis
Hint
Assign the value 2 to the variable end_index.
4
Use LRANGE to read elements from the list
Use the LRANGE command with the list user_actions, the start_index, and the end_index variables to read the elements from the list.
Redis
Hint
Use LRANGE user_actions start_index end_index to get the elements from index 1 to 2.
Practice
(1/5)
1. What does the Redis command LRANGE mylist 0 -1 do?
easy
A. Returns the length of mylist.
B. Returns only the first element of mylist.
C. Returns all elements in the list mylist.
D. Deletes all elements in mylist.
Solution
Step 1: Understand LRANGE parameters
The command LRANGE key start stop returns elements from index start to stop inclusive.
Step 2: Interpret 0 and -1 indexes
Index 0 is the first element, and -1 means the last element, so it returns the whole list.
Final Answer:
Returns all elements in the list mylist. -> Option C
Quick Check:
LRANGE mylist 0 -1 = all elements [OK]
Hint: Use 0 and -1 to get the entire list quickly [OK]
Common Mistakes:
Thinking -1 excludes the last element
Confusing LRANGE with LLEN
Assuming LRANGE deletes elements
2. Which of the following is the correct syntax to get the first 3 elements of a Redis list named tasks using LRANGE?
easy
A. LRANGE tasks 1 3
B. LRANGE tasks -3 -1
C. LRANGE tasks 0 3
D. LRANGE tasks 0 2
Solution
Step 1: Understand zero-based indexing
Redis list indexes start at 0, so the first element is index 0.
Step 2: Calculate indexes for first 3 elements
First 3 elements are at indexes 0, 1, and 2, so LRANGE should be 0 to 2.
Final Answer:
LRANGE tasks 0 2 -> Option D
Quick Check:
First 3 elements = indexes 0 to 2 [OK]
Hint: Remember list indexes start at 0, so first 3 are 0 to 2 [OK]
Common Mistakes:
Starting at index 1 instead of 0
Using stop index as 3 which returns 4 elements
Using negative indexes incorrectly
3. Given a Redis list colors with elements ["red", "green", "blue", "yellow", "purple"], what is the result of LRANGE colors 1 3?
Hint: Count indexes starting at 0 to pick correct slice [OK]
Common Mistakes:
Including index 0 when start is 1
Using stop index as exclusive instead of inclusive
Confusing element order
4. You run LRANGE mylist 2 0 on a Redis list. What is the problem with this command?
medium
A. The start index is greater than the stop index, so it returns an empty list.
B. Syntax error because indexes must be positive.
C. It returns the entire list ignoring indexes.
D. It deletes elements from index 0 to 2.
Solution
Step 1: Check index order in LRANGE
LRANGE expects start index less than or equal to stop index to return elements.
Step 2: Analyze given indexes
Start is 2, stop is 0, so start > stop, which returns an empty list.
Final Answer:
The start index is greater than the stop index, so it returns an empty list. -> Option A
Quick Check:
Start > stop means empty result [OK]
Hint: Start index must be ≤ stop index to get results [OK]
Common Mistakes:
Assuming negative indexes are invalid syntax
Expecting reversed range to return elements
Confusing LRANGE with deletion commands
5. You have a Redis list logs with 11 elements. You want to get the last 5 elements using LRANGE. Which command is correct?
hard
A. LRANGE logs -5 -1
B. LRANGE logs 4 8
C. LRANGE logs 5 9
D. LRANGE logs -4 0
Solution
Step 1: Understand negative indexes in LRANGE
Negative indexes count from the end: -1 is last element, -5 is fifth from last.
Step 2: Select last 5 elements using negative indexes
LRANGE logs -5 -1 returns elements from fifth last to last, i.e., last 5 elements.
Step 3: Check other options
LRANGE logs 5 9 uses positive indexes 5 to 9 which gets elements 5-9, but for 11 elements the last 5 are indexes 6-10, so incorrect. Negative indexes are safer if length changes.
Final Answer:
LRANGE logs -5 -1 -> Option A
Quick Check:
Negative indexes -5 to -1 = last 5 elements [OK]
Hint: Use negative indexes -5 to -1 for last 5 elements safely [OK]
Common Mistakes:
Using wrong negative indexes like -4 to 0
Confusing zero-based positive indexes with negative
Assuming LRANGE excludes stop index
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.