单值多value
零、性能总结
它是一个字符串链表,Ieft、rght 都可以插入添加
如果键不存在,创建新的链表
如果键已存在,新增内容;如果值全移除,对应的键也就消失了
链表的操作无论是头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡了
一、List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。它的底层实际是个链表。
二、lpush/rpush/lrange
-
lpush
效果:设置一条链表,反向设置
-
rpush
效果:设置一条链表,正向设置
-
lrange
效果:list的范围显示
三、lpop/rpop
-
lpop
效果:从“上”弹栈
-
rpop
效果:从“下”弹栈
四、lindex/llen
-
lindex
效果:按照索引下标获得元素(从上到下
用法:
注意:索引下标与现实的序号不同
-
llen
效果:获取列表长度
用法:
五、lrem key/ltrim key
-
lrem key
效果:删除N个value
-
ltrim key
效果:截取指定范围的值后再赋值给key
用法:从开始的index 到结束的index 截取出来,再重新赋值给key,把原来的给覆盖了
六、rpoplpush
-
rpoplpush
效果:把第一个list进行rpop,然后lpush给第二个list
七、set key index value/linsert key before/after 值1 值2
-
set key index value
效果:设置第index的值为value
-
linsert key before/after 值1 值2
效果:在值1的前/后 插入值2