Redis Lists are simply lists of strings, sorted by insertion order. You can add elements in Redis lists in the head or the tail of the list.

Maximum length of a list is 232 – 1 elements (4294967295, more than 4 billion of elements per list).

Example

redis 127.0.0.1:6379> LPUSH tutorials redis 
(integer) 1 
redis 127.0.0.1:6379> LPUSH tutorials mongodb 
(integer) 2 
redis 127.0.0.1:6379> LPUSH tutorials mysql 
(integer) 3 
redis 127.0.0.1:6379> LRANGE tutorials 0 10  
1) "mysql" 
2) "mongodb" 
3) "redis"

In the above example, three values are inserted in Redis list named ‘tutorials’ by the command LPUSH.

Redis Lists Commands

Following table lists some basic commands related to lists.

Sr.NoCommand & Description
1BLPOP key1 [key2 ] timeoutRemoves and gets the first element in a list, or blocks until one is available
2BRPOP key1 [key2 ] timeoutRemoves and gets the last element in a list, or blocks until one is available
3BRPOPLPUSH source destination timeoutPops a value from a list, pushes it to another list and returns it; or blocks until one is available
4LINDEX key indexGets an element from a list by its index
5LINSERT key BEFORE|AFTER pivot valueInserts an element before or after another element in a list
6LLEN keyGets the length of a list
7LPOP keyRemoves and gets the first element in a list
8LPUSH key value1 [value2]Prepends one or multiple values to a list
9LPUSHX key valuePrepends a value to a list, only if the list exists
10LRANGE key start stopGets a range of elements from a list
11LREM key count valueRemoves elements from a list
12LSET key index valueSets the value of an element in a list by its index
13LTRIM key start stopTrims a list to the specified range
14RPOP keyRemoves and gets the last element in a list
15RPOPLPUSH source destinationRemoves the last element in a list, appends it to another list and returns it
16RPUSH key value1 [value2]Appends one or multiple values to a list
17RPUSHX key valueAppends a value to a list, only if the list exists

Leave a Reply

Your email address will not be published. Required fields are marked *