zoukankan      html  css  js  c++  java
  • Redis:List列表相关指令

    前言:

      redis里支持list类型,当然list这个结构可以通过逻辑处理变成一些其他的结构

      如果在list类型的基础上去给他写一个里面元素先进先出的话,那么他就变成里一个栈结构

     

     

      如果给它写一个先进先出的逻辑,那么他的结构就是队列

      如果list这个容器两面都可以进出的话,他就是一个阻塞队列

     

      

    所用的list的命令都是用 l 开头的 

    1.设置值

    lpush {key name} {value}  #从左边插入

    rpush {key name} {value} #从右边插入

    lset {key name} {value} #按下标插入,下标处原有的值被替换

    3.通过区间获取值

    lrange {key name} {start} {end}

    获取全部值 0  -1

    4.移除对队列里的元素

    lpop {key name}  #移除list里最左边的元素

    rpop {key name} #移除list里最右边的元素 

    5.通过下标获取list里的某一个值

    lindex {key name} {index}

    6.查询列表的长度

    Llen {key name}

    7.移除list中指定的值

    lrem {key name} {count} {value}

    8.截取数据库值

    ltrim {key name} {index start} {index stop}

     

     

    9.移除当前列表的最后的一个元素,并将该元素放到新列表当中

    rpoplpush {当前列表} {新列表}

     

    小结:

      更多全面的相关指令可以参考redis的中文官网

      list实际上是一个双向链表,brfore Node afterl~leftr~right都是可以插入值的

      如果key不存在,则创建新的节点

      如果key存在,则更新(覆盖原有的)值

      在两边插入和更新值效率是最高的,中间操作相对来说效率回低一点

     

     

     

     

  • 相关阅读:
    性能测试术语讲解
    Silverlight 部署
    C#数据库SQLServer查询、修改数据
    有一点点背
    Ajax与XMLHttpRequest对象
    ServletListener 之 监听HTTP会话
    JAVA中几种常见集合的使用实例
    [转]全面接触Java集合框架(二)
    自定义标签之 SimpleTag的开发
    jsp常用内置对象
  • 原文地址:https://www.cnblogs.com/CL-King/p/14578704.html
Copyright © 2011-2022 走看看