redis-list列表

redis-list列表

redis list 列表是一个链表(linked lists), 可以当作队列使用,可以是先进先出,也可以先进后出,可以当作阻塞队列。模拟生者消费者模型。

插入值

lpush:(左) 将一个或者多个值插入到列表头部
rpush:(右) 将一个或者多个值插入到列表头部
语法: lpush key 值
lrange: 查看值
lrange key start end

127.0.0.1:6379> lpush list a b c d  #添加值
4
127.0.0.1:6379> rpush list z  #右侧添加值
5
127.0.0.1:6379> lrange list 0 -1  # 查看区间范围内的值
1
d
c
b
a
z
127.0.0.1:6379>

删除值

lpop: 左侧弹出
rpop: 右侧弹出
语法:lpop key 返回弹出值

127.0.0.1:6379> lpop list  # 左侧弹出
1
127.0.0.1:6379> rpop list  # 右侧弹出
z
127.0.0.1:6379> lrange list 0 -1
d
c
b
a
127.0.0.1:6379> 

索引获取元素

**lindex:**通过索引获取元素
语法:lindex key 索引值
Llen: 查看列表长度
语法:Llen key

127.0.0.1:6379> lrange list 0 -1
d
c
b
a
127.0.0.1:6379> LINDEX list 0 # 第一个值
d
127.0.0.1:6379> LINDEX list 1 
c
127.0.0.1:6379> 
127.0.0.1:6379> LINDEX list -1  # 最后一个值
a
127.0.0.1:6379> llen list   # 列表长度
4
127.0.0.1:6379> 

删除列表值

lrem 移除列表中指定元素
语法:lrem key count(多少个) value
count:删除多少个值,-

  • 如果a 的值有3个, count=2 删除2个
  • 如果a 的值有3个,count=5 删除3个
127.0.0.1:6379> lrange list 0 -1
a
d
c
b
a
127.0.0.1:6379> 
127.0.0.1:6379> lrem list 1 a
1
127.0.0.1:6379> 
127.0.0.1:6379> 
127.0.0.1:6379> lrange list 0 -1
d
c
b
a

元素裁剪

ltrim :元素裁剪返回指定元素
ltrim key start end

127.0.0.1:6379> lpush mylist hello hello hello2 hello3
4
127.0.0.1:6379> lrange mylist 0 -1
hello3
hello2
hello
hello
127.0.0.1:6379> 
127.0.0.1:6379> ltrim mylist 1 2 #返回指定元素
OK
127.0.0.1:6379> lrange mylist 0 -1
hello2
hello

列表弹出值,保存到新的列表

rpoplpush: 弹出元素保存到新列表

127.0.0.1:6379> rpoplpush mylist newlist  # 弹出值,保存到新的列表
hello
127.0.0.1:6379> lrange mylist 0 -1
hello4
hello3
hello2
127.0.0.1:6379> lrange newlist 0 -1
hello
127.0.0.1:6379> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值