Redis(List)数据类型

2021/7/29 19:07:36

本文主要是介绍Redis(List)数据类型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

基本的数据类型,列表,在Redis里面我们可以把list玩成,队列阻塞队列

所有的list命令都使用l或r开头的,代表left和right,l是队头r是队尾

数值操作

lpush key value  #左边插入,向list集合中存储一个值,可以多次存储

在这里插入图片描述

lrange  key  start  stop  #通过区间获取集合中指定的元素

在这里插入图片描述
数据的读取规则,先进后出,最后一个元素为0号元素。
在这里插入图片描述

当我们再次向里面存储数据时,他存到了最后一位而不是第一位,所以说这相当于双端队列,可以从两端取,也可以从两端存。

栈的概念:是弹压,就像子弹壳装弹,一粒一粒压进去,但是打出来的时候是从上面打出来的,最先压进去的最后弹出来,如果进去顺序是123,打出来顺序是321,这就是后进先出。

队列的概念:就是我们平时排队,按次序来,你排在第1个,那你就第一个轮到,就是先进先出,先到先来

rpush  key  element [element...]    #向队列尾部插入元素

在这里插入图片描述

lpop key [count]   #从集合左边移除一个值,可以指定移除个数,若不指定将移除第一个

在这里插入图片描述

rpop key [count]  #从集合右边移除一个值,可以指定移除个数,若不指定将移除第一个

在这里插入图片描述

lindex  key  index   #通过下标获取值

在这里插入图片描述

llen key  #返回这个集合的长度

在这里插入图片描述

lrem  key count  element   #移除指定的值,可以指定个数

在这里插入图片描述

ltrim key start stop   #截取指定的元素

由下图可见,这个命令会截断集合,并覆盖到原集合
在这里插入图片描述

rpoplpush source destination   #移除指定集合的最后一个元素,并把它添加到另外一个集合

在这里插入图片描述

lset key index value   #给指定集合下标添加值,如果集合或下标不存在,则会报错

在这里插入图片描述
在这里插入图片描述

可以用来做替换、更新操作
在这里插入图片描述

linsert key before|after pivot element   #向指定集合指定元素后面或前面添加元素

在这里插入图片描述
当集合中有两个相同的值时,则在左侧开始匹配到的第一个值插入
在这里插入图片描述
总结

  • 它实际上是一个链表,before Node after,left,right 都可以插入值
  • 如果key不存在,创建新的链表
  • 如果key存在添加内容
  • 如果移除了所有的值,就变成了空列表,也表示不存在!
  • 在两边插入或改动值效率最高,对中间元素操作,效率来说效率会低一些!


这篇关于Redis(List)数据类型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程