【Redis】list列表

上一篇: String 类型

https://blog.csdn.net/m0_67930426/article/details/134362606?spm=1001.2014.3001.5501

目录

Lpush

LRange

Rpush

Lpop

Rpop

Lindex

Ltrim

Lset

列表不存在的情况

如果列表存在

Linsert

​编辑

在.........之前插入

在......后面插入

组合命令

RpopLpush


官网:

Commands | Redis

Lpush

向列表左侧插入一个或多个元素

语法

Lpush key element

首先清空数据库(非必要操作,为了演示更加清晰)

LRange

返回所有列表元素

语法

LRANGE Key start end

从左侧插入

--------> two one

Rpush

向列表左侧插入一个或多个元素

语法

Ppush key element

现在列表的顺序是这样

two one

现在我在他左侧插入一个元素

现在的顺序是 two one three

Lpop

移除列表左边第一个元素

列表: two one three

他返回了一个被移除的元素

继续查看列表

列表 one three

Rpop

移除列表第一个元素

当前列表 one three

返回了three,说明three是被移除的

查看列表

现在列表就剩下one一个元素

Lindex

获取列表元素

方便演示先清空一下数据库

然后重新创建一个列表(非必要操作,只是让后面的演示更加明朗,并且加深创建的印象)

用 Lpush 命令或者 Rpush命令都可以

现在我们获取列表的第一个元素

Ltrim

根据下标截取长度

这里创建了一个列表

从下标1开始截取到下标3,查看列表发现原先列表第一个元素不见了

截取的留在了现在的列表

Lset

更新列表里的元素

前提是,该列表存在,并且要修改下标的元素也要存在

列表不存在的情况

首先清空数据库

此时数据库已经清空

因为列表不存在所以返回了一个错误的提示

lset list 0 a

0---------------下标

a---------------是指将a替换列表指定下标的元素

如果列表存在

我们先去创建一个列表

现在得到一个列表 d c b a

这里提示错误的原因是列表不存在被替换的元素

所以替换某个元素的前提是被替换的要存在

现在将 c 改为 f

修改成功

此时列表 d f b a

Linsert

这里又重新创建了一个列表

three two one

在.........之前插入

例如在two的前面插入four

linsert list before two four

查看列表

此时列表 three four two one

在......后面插入

例如在one 后面插入five

插入成功

组合命令

RpopLpush

(Rop +Lpush)

移除列表最后一个元素到另一个列表

列表: one two three

rpoplpush list list2

该命令的意思是移除 lis t列表最后一个元素到 list2 列表去

结果返回了一个one ,说明one 是被移除的元素

现在来查看 list 表

再来查看 list2表

相关推荐
清水白石00830 分钟前
从一个“支付状态不一致“的bug,看大型分布式系统的“隐藏杀机“
java·数据库·bug
qq_3643717230 分钟前
Vue 内置组件 keep-alive 中 LRU 缓存淘汰策略和实现
前端·vue.js·缓存
Python私教5 小时前
model中能定义字段声明不存储到数据库吗
数据库·oracle
BestandW1shEs8 小时前
谈谈Mysql的常见基础问题
数据库·mysql
重生之Java开发工程师8 小时前
MySQL中的CAST类型转换函数
数据库·sql·mysql
教练、我想打篮球8 小时前
66 mysql 的 表自增长锁
数据库·mysql
Ljw...8 小时前
表的操作(MySQL)
数据库·mysql·表的操作
哥谭居民00018 小时前
MySQL的权限管理机制--授权表
数据库
wqq_9922502778 小时前
ssm旅游推荐系统的设计与开发
数据库·旅游