Redis的List操作

本文详细介绍了Redis中列表的数据结构操作,包括从左侧(lpush)和右侧(rpush)添加元素,以及使用lrange获取列表值,lpop和rpop移除元素,rpoplpush实现元素迁移,lindex按索引获取元素,llen获取列表长度,linsert在指定位置插入元素,lrem删除匹配项,以及lset更新指定索引的值。这些操作对于理解和使用Redis列表至关重要。
摘要由CSDN通过智能技术生成

从左/右边开始添加元素

127.0.0.1:6379> lpush k1 v1 v2 v3
(integer) 3
------------------------------
127.0.0.1:6379> rpush k1 v1 v2 v3
(integer) 3

取值的特点

## 从0 开始取出所有value
127.0.0.1:6379> lpush k1 v1 v2 v3
(integer) 3
127.0.0.1:6379> lrange k1 0 -1
1) "v3"
2) "v2"
3) "v1"
127.0.0.1:6379> 
-------------------------------------------------
-------------------------------------------------
127.0.0.1:6379> rpush k1 v1 v2 v3
(integer) 3
127.0.0.1:6379> lrange k1 0 -1
1) "v1"
2) "v2"
3) "v3"
127.0.0.1:6379> 

从左边/右边吐值

127.0.0.1:6379> lpop k1 
"v1"
127.0.0.1:6379> rpop k1
"v3"
127.0.0.1:6379> 


从k1右边取出一个元素插到k2左边

127.0.0.1:6379> lrange k1 0 -1
1) "v3"
2) "v2"
3) "v1"
127.0.0.1:6379> lrange k2 0 -1
1) "v11"
2) "v22"
3) "v33"
127.0.0.1:6379> rpoplpush k1 k2
"v1"
127.0.0.1:6379> lrange k2 0 -1
1) "v1"
2) "v11"
3) "v22"
4) "v33"
127.0.0.1:6379> lrange k1 0 -1
1) "v3"
2) "v2"
127.0.0.1:6379> 

根据下标取元素

127.0.0.1:6379> lrange k1 0 -1
1) "v3"
2) "v2"
127.0.0.1:6379> lindex k1 0
"v3"

获取列表长度

127.0.0.1:6379> lpush k1 v1 v2 v3 v4 v5
(integer) 5
127.0.0.1:6379> llen k1
(integer) 5
127.0.0.1:6379> 

在列表某个元素前后加值

127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "v11"
3) "v5"
4) "v4"
5) "v3"
6) "v2"
7) "v1"
127.0.0.1:6379> linsert k1 before v5 voo
(integer) 8
127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "v11"
3) "voo"
4) "v5"
5) "v4"
6) "v3"
7) "v2"
8) "v1"
127.0.0.1:6379> linsert k1 after  v5 v000
(integer) 9
127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "v11"
3) "voo"
4) "v5"
5) "v000"
6) "v4"
7) "v3"
8) "v2"
9) "v1"

删除前几位种的某个特定元素

## lrem [key]  [位数] [元素]
127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "v11"
3) "voo"
4) "v5"
5) "v000"
6) "v4"
7) "v3"
8) "v2"
9) "v1"

127.0.0.1:6379> lrem k1 5 v000
(integer) 1
127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "v11"
3) "voo"
4) "v5"
5) "s"
6) "v4"
7) "v3"
8) "v2"
9) "v1"

改变某个下标位置的元素值

127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "v11"
3) "voo"
4) "v5"
5) "s"
6) "v4"
7) "v3"
8) "v2"
9) "v1"

127.0.0.1:6379> lset k1 1 zhouchuanjun
OK
127.0.0.1:6379> lrange k1 0 -1
1) "v22"
2) "zhouchuanjun"
3) "voo"
4) "v5"
5) "s"
6) "v4"
7) "v3"
8) "v2"
9) "v1"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值