Redis列表

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列表中。

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

僅當列表存在時纔將值附加到列表