Redis 数据类型列表(List)
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)
一个列表最多可以包含 232 – 1 个元素 (4294967295, 每个列表超过40亿个元素)
-
LPUSH key value1 [value2] 将一个或多个值插入到列表头部 127.0.0.1:6379> lpush queue Ford Toyota Honda
-
LPUSHX key value 将一个值插入到已存在的列表头部 127.0.0.1:6379> Lpushx queue Byd
-
LLEN key 获取列表长度 127.0.0.1:6379> Llen queue
-
LRANGE key start stop 获取列表指定范围内的元素, 其中 0 表示列表的第一个元素, 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素 127.0.0.1:6379> Lrange queue 0 -1
-
LINDEX key index 通过索引获取列表中的元素 127.0.0.1:6379> Lindex queue 4,以0表示第一个元素, -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推
-
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
-
RPUSH key value1 [value2] 在列表尾部添加一个或多个值 127.0.0.1:6379> Rpush queue Tesla
-
RPUSHX key value 为已存在的列表添加一个或多个值插入到已存在的列表尾部(最右边) 127.0.0.1:6379> Rpushx queue Benz
-
LPOP key 移出并获取列表的第一个元素 127.0.0.1:6379> Lpop queue
-
RPOP key 移除并获取列表最后一个元素 127.0.0.1:6379> Rpop queue
-
LREM key count value 移除列表元素,从头部开始移除count个value 127.0.0.1:6379> Lrem queue 1 Byd
-
LSET key index value 通过索引设置列表元素的值 127.0.0.1:6379> Lset queue 0 Honda
-
BLPOP key1 [key2 ] timeout 移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。 127.0.0.1:6379> Blpop queue 20 (阻塞等待20秒)
-
BRPOP key1 [key2 ] timeout 移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。127.0.0.1:6379> Brpop queue 20(阻塞等待20秒)
-
BRPOPLPUSH source destination timeout 从列表中弹出一个值,将弹出的元素插入到另外一个列表中并返回它; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止,127.0.0.1:6379> Brpoplpush queue queue2 30 (30秒内queue队列里面有被弹出的数据将被插入到queue2队列里面)
-
RPOPLPUSH source destination 移除列表的最后一个元素,并将该元素添加到另一个列表并返回 127.0.0.1:6379> Rpoplpush queue queue3 (移除queue最后一个元素,并将该元素插入到queue3队列里面)
-
LTRIM key start stop 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除 127.0.0.1:6379> Ltrim queue 2 4 (保留队列元素下标2,到4的元素)