redis-list数据类型小结

Published on:
Tags: redis

链表可以看作是一个队列,左边是队列头,右边是队列尾,增加是push,删除是pop。

  • 新增值

    • 队列头增加值 lpush key value [value2 value3]
    • 队列尾增加值 rpush key value [value2 value3]
    • 相对位置插入值 linsert key before|after pivot value
    • 新增带判断,链表不存在时增加失败
      • 队列头增加值 lpushx key value
      • 队列尾增加值 rpushx key value
  • 查询值

    • 通过索引获取单个值 lndex key index
    • 通过索引获取多个值 lrange key start stop
  • 修改值

    • 通过索引修改指定位置的值 lset key index value
  • 删除值

    • 队列头删除并获得值 lpop key
    • 阻塞式表头删除并获得值 blpop key timeout
    • 表尾删除并获得值 rpop key
    • 阻塞式表尾删除并获得值 brpop key timeout
    • 删除指定元素值 lrem key count value 删除key链表中,与value值相同的元素值
    • 删除索引范围外的元素值 ltrim key start stop
  • 操作链表

    • 移动元素 rpoplpush source destination
    • 阻塞式移动元素 brpoplpush source destination
  • 获取链表长度 llen key

list