Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)

一个列表最多可以包含 232 – 1 个元素 (4294967295, 每个列表超过40亿个元素)

  1. LPUSH key value1 [value2] 将一个或多个值插入到列表头部 127.0.0.1:6379> lpush queue Ford Toyota Honda

  2. LPUSHX key value 将一个值插入到已存在的列表头部  127.0.0.1:6379> Lpushx queue Byd

  3. LLEN key 获取列表长度 127.0.0.1:6379> Llen queue

  4. LRANGE key start stop 获取列表指定范围内的元素, 其中 0 表示列表的第一个元素, 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素 127.0.0.1:6379> Lrange queue 0 -1

  5. LINDEX key index 通过索引获取列表中的元素 127.0.0.1:6379> Lindex queue 4,以0表示第一个元素, -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推

  6. LINSERT key BEFORE|AFTER pivot value 在列表的元素前或者后插入元素 127.0.0.1:6379> Linsert queue before Toyota Nissan   127.0.0.1:6379> Linsert queue after Toyota Buick

  7. RPUSH key value1 [value2] 在列表尾部添加一个或多个值  127.0.0.1:6379> Rpush queue Tesla

  8. RPUSHX key value 为已存在的列表添加一个或多个值插入到已存在的列表尾部(最右边) 127.0.0.1:6379> Rpushx queue Benz

  9. LPOP key 移出并获取列表的第一个元素 127.0.0.1:6379> Lpop queue

  10. RPOP key 移除并获取列表最后一个元素 127.0.0.1:6379> Rpop queue

  11. LREM key count value 移除列表元素,从头部开始移除count个value 127.0.0.1:6379> Lrem queue 1 Byd

  12. LSET key index value 通过索引设置列表元素的值 127.0.0.1:6379> Lset queue 0 Honda

  13. BLPOP key1 [key2 ] timeout 移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。 127.0.0.1:6379> Blpop queue 20  (阻塞等待20秒)

  14. BRPOP key1 [key2 ] timeout 移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。127.0.0.1:6379> Brpop queue 20(阻塞等待20秒)

  15. BRPOPLPUSH source destination timeout 从列表中弹出一个值,将弹出的元素插入到另外一个列表中并返回它; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止,127.0.0.1:6379> Brpoplpush queue queue2 30  (30秒内queue队列里面有被弹出的数据将被插入到queue2队列里面)

  16. RPOPLPUSH source destination 移除列表的最后一个元素,并将该元素添加到另一个列表并返回  127.0.0.1:6379> Rpoplpush queue queue3 (移除queue最后一个元素,并将该元素插入到queue3队列里面)

  17. LTRIM key start stop 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除 127.0.0.1:6379> Ltrim queue 2 4 (保留队列元素下标2,到4的元素)