一、常用
二、单key多value
三、简单说明
一个双端链表的结构,容量是2的32次方减1个元素,大概40多亿,主要功能有push/pop等,一般用在栈、队列、消息队列等场景。
left、right都可以插入添加;
如果键不存在,创建新的链表;
如果键已存在,新增内容;
如果值全移除,对应的键也就消失了。
它的底层实际是个双向链表,对两端的操作性能很高,通过索引下标的操作中间的节点性能会较差。
四、案例
1、lpush/rpush/lrange
2、lpop/rpop
3、lindex按照所以下表获得元素(从上到下)
通过索引获取列表中的元素 lindex key index
4、llen
获取列表中元素的个数
5、lrem key 数字N 给定值v1(删除N个值等于v1的元素)
* 从left往right删除2个值等于v1的元素,返回的值为实际删除的数量
* LREM list3 0 值,表示删除全部给定的值。零个就是全部值
6、ltrim key 开始index 结束index(截取指定范围的值再赋值给key)
ltrim:截取指定索引区间的元素,格式是ltrim list的key 起始索引 结束索引
7、rpoplpush 源列表 目标列表
移除列表的最后一个元素,并将该元素添加到另一个列表并返回
8、lset key index value
根据index下标修改值
9、linsert key before/after 已有值 插入的新值
在list某个已有值的前后再添加具体值
10、应用场景
公11众号订阅消息
1 大V作者A老师和B发布了文章分别是 11 和 22
2 关注了他们两个,只要他们发布了新文章,就会安装进我的List
lpush likearticle:qingchenid 11 22
3 查看自己的号订阅的全部文章,类似分页,下面0~10就是一次显示10条
lrange likearticle:qingchenid 0 9
标签:10,index,Redis7,元素,数据类型,列表,索引,key
From: https://blog.51cto.com/u_13236892/7464105