Why does LRANGE return an empty list when start index is greater than stop index?
Because LRANGE extracts elements from start to stop inclusive, if start > stop, there are no elements in that range, so it returns an empty list as shown in row 5 of the execution_table.
How do negative indexes work in LRANGE?
Negative indexes count from the end of the list backwards. For example, -1 is the last element, -2 is second last, etc. This is shown in row 4 where start=-3 and stop=-1 extracts last three elements.
What happens if the stop index is larger than the list length?
LRANGE returns elements from start index up to the end of the list. It does not error. This is shown in row 3 where stop=10 but list length is 5, so it returns elements from index 2 to 4.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table row 1. What elements does LRANGE return for command 'LRANGE mylist 1 3'?
A["element1", "element2", "element3"]
B["element3", "element4", "element5"]
C["element2", "element3", "element4"]
D[]
💡 Hint
Check the Extracted Elements column in row 1 of execution_table.
At which execution_table row does LRANGE use negative indexes to extract elements?
ARow 2
BRow 4
CRow 3
DRow 5
💡 Hint
Look for negative start and stop indexes in the Start Index and Stop Index columns.
If the start index is 4 and stop index is 2, what will LRANGE return according to the execution_table?
A[]
B["element3", "element4"]
C["element5"]
D["element4", "element5"]
💡 Hint
Check row 5 where start > stop and see the Result column.
Concept Snapshot
LRANGE key start stop
- Reads elements from a Redis list between start and stop indexes inclusive.
- Indexes can be negative to count from the end (-1 last element).
- If stop > list length, returns up to end.
- If start > stop, returns empty list.
- Returns elements as an array.
Full Transcript
LRANGE is a Redis command to read elements from a list by specifying start and stop indexes. It calculates the actual indexes, supports negative indexes counting from the end, and returns the elements in that range. If the start index is greater than the stop index, it returns an empty list. If the stop index is beyond the list length, it returns elements up to the end. This visual execution shows step-by-step how LRANGE extracts elements and what results it returns for different index values.