Redis学习笔记之Redis列表List(六)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Redis学习笔记之Redis列表List(六)

特点

       List类型是按照插入顺序排序的字符串链表。和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素。在插入时,如果该键并不存在,Redis将为该键创建一个新的链表。与此相反,如果链表中所有的元素均被移除,那么该键也将会被从数据库中删除。List中可以包含的最大元素数量是4294967295。
      从元素插入和删除的效率视角来看,如果我们是在链表的两头插入或删除元素,这将会是非常高效的操作,即使链表中已经存储了百万条记录,该操作也可以在常量时间内完成。然而需要说明的是,如果元素插入或删除操作是作用于链表中间,那将会是非常低效的。相信对于有良好数据结构基础的开发者而言,这一点并不难理解。

     List 字符串链表是单key多value。

常用api

 lpush key value1 value2 ...

【格式】lpush key value1 value2 ...
【作用】字符串链表中添加value,如果key存在追加,如果不存在,创建key并追加
例如: 
  $: lpush list01 1 2 3 1 2

rpush key value1 value2 ...

【格式】rpush key value1 value2 ...
【作用】字符串链表中添加value,如果key存在追加,如果不存在,创建key并追加
例如: 
  $: rpush list01 1 2 3 1 2

lrange key begin end

【格式】lrange key begin end
【作用】获取范围内链表中的value
例如: 
  $: lpush list01 1 2 3 1 2
  $: lrange list01 0 -1 #全部value
  $: lrange list01 0 3  #前4个value

lpop key

【格式】lpop key
【作用】移除并返回列表 key 的头元素
例如: 
  $: lpush list01 1 2 3 1 2
  $: lpop list01 #移除并返回1

rpop key

【格式】rpop key
【作用】移除并返回列表 key 的尾元素
例如: 
  $: lpush list01 1 2 3 1 2
  $: rpop list01 #移除并返回2

lindex key num

【格式】lindex key num
【作用】返回列表 key 中,下标为 index 的元素。
例如: 
  $: lpush list01 1 2 3 4 3 2 1
  $: lindex list01 2 # 返回3

lrem key n m

【格式】lrem key n m
【作用】移除列表中n个m
例如: 
  $: lpush list01 1 2 3 4 3 2 1
  $: lrem list01 2 3  # 返回移除元素的个数

ltrim key begin_index end_index

【格式】ltrim key begin_index end_index
【作用】让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
例如: 
  $: lpush list01 1 2 3 4 3 2 1
  $: ltrim  list01 1 3  # 2 3

 

 

 

所以API

网址:   http://redisdoc.com/

Redis学习笔记之Redis列表List(六)_第1张图片

 

转载于:https://my.oschina.net/KingPan/blog/755018

你可能感兴趣的:(Redis学习笔记之Redis列表List(六))