redis列表只是字符串列表,按插入顺序排序。可以在列表的头部或尾部添加redis列表中的元素。
列表的最大长度为2^32 - 1
个元素(即4294967295
,每个列表可存储超过40亿个元素)。
redis 127.0.0.1:6379> lpush mylist "redis"
(integer) 1
redis 127.0.0.1:6379> lpush mylist "mongodb"
(integer) 2
redis 127.0.0.1:6379> lpush mylist "mysql"
(integer) 3
redis 127.0.0.1:6379> lrange mylist 0 10
1) "mysql"
2) "mongodb"
3) "redis"
在上面的示例中,通过命令lpush
将三个值插入到名称为“mylist
”的redis列表中。
下表列出了与列表相关的一些基本命令。
序号 | 命令 | 说明 |
---|---|---|
1 | blpop key1 [key2 ] timeout | 删除并获取列表中的第一个元素,或阻塞,直到有一个元素可用 |
2 | brpop key1 [key2 ] timeout | 删除并获取列表中的最后一个元素,或阻塞,直到有一个元素可用 |
3 | brpoplpush source destination timeout | 从列表中弹出值,将其推送到另一个列表并返回它; 或阻塞,直到一个可用 |
4 | lindex key index | 通过其索引从列表获取元素 |
5 | linsert key before/after pivot value | 在列表中的另一个元素之前或之后插入元素 |
6 | llen key | 获取列表的长度 |
7 | lpop key | 删除并获取列表中的第一个元素 |
8 | lpush key value1 [value2] | 将一个或多个值添加到列表 |
9 | lpushx key value | 仅当列表存在时,才向列表添加值 |
10 | lrange key start stop | 从列表中获取一系列元素 |
11 | lrem key count value | 从列表中删除元素 |
12 | lset key index value | 通过索引在列表中设置元素的值 |
13 | ltrim key start stop | 修剪列表的指定范围 |
14 | rpop key | 删除并获取列表中的最后一个元素 |
15 | rpoplpush source destination | 删除列表中的最后一个元素,将其附加到另一个列表并返回 |
16 | rpush key value1 [value2] | 将一个或多个值附加到列表 |
17 | rpushx key value | 仅当列表存在时才将值附加到列表 |