Redis列表只是字符串列表,按插入順序排序??梢栽诹斜淼念^部或尾部添加Redis列表中的元素。
列表的最大長(zhǎng)度為2^32 - 1個(gè)元素(即4294967295,每個(gè)列表可存儲(chǔ)超過(guò)40億個(gè)元素)。
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"
在上面的示例中,通過(guò)命令LPUSH將三個(gè)值插入到名稱為“mylist”的Redis列表中。
下表列出了與列表相關(guān)的一些基本命令。
| 序號(hào) | 命令 | 說(shuō)明 |
|---|---|---|
| 1 | BLPOP key1 [key2 ] timeout | 刪除并獲取列表中的第一個(gè)元素,或阻塞,直到有一個(gè)元素可用 |
| 2 | BRPOP key1 [key2 ] timeout | 刪除并獲取列表中的最后一個(gè)元素,或阻塞,直到有一個(gè)元素可用 |
| 3 | BRPOPLPUSH source destination timeout | 從列表中彈出值,將其推送到另一個(gè)列表并返回它; 或阻塞,直到一個(gè)可用 |
| 4 | LINDEX key index | 通過(guò)其索引從列表獲取元素 |
| 5 | LINSERT key BEFORE/AFTER pivot value | 在列表中的另一個(gè)元素之前或之后插入元素 |
| 6 | LLEN key | 獲取列表的長(zhǎng)度 |
| 7 | LPOP key | 刪除并獲取列表中的第一個(gè)元素 |
| 8 | LPUSH key value1 [value2] | 將一個(gè)或多個(gè)值添加到列表 |
| 9 | LPUSHX key value | 僅當(dāng)列表存在時(shí),才向列表添加值 |
| 10 | LRANGE key start stop | 從列表中獲取一系列元素 |
| 11 | LREM key count value | 從列表中刪除元素 |
| 12 | LSET key index value | 通過(guò)索引在列表中設(shè)置元素的值 |
| 13 | LTRIM key start stop | 修剪列表的指定范圍 |
| 14 | RPOP key | 刪除并獲取列表中的最后一個(gè)元素 |
| 15 | RPOPLPUSH source destination | 刪除列表中的最后一個(gè)元素,將其附加到另一個(gè)列表并返回 |
| 16 | RPUSH key value1 [value2] | 將一個(gè)或多個(gè)值附加到列表 |
| 17 | RPUSHX key value | 僅當(dāng)列表存在時(shí)才將值附加到列表 |