• redis3 list类型


    list类型及操作
    list是一个链表结构,主要功能是push,pop、获取一个范围的所有值等,操作中key理解为链表的名字。redis的list类型其实就是一个每个子元素都是string类型的双向链表。我么可以通过push、pop操作从链表的头部或者尾部添加删除元素,这样list既可以作为栈又可以作为队列。

        lpush
        在key对应的list头部添加字符串元素,返回list中的个数,先进后出和栈一样
        例如:
        lpush mylist 'world'
        lpush mylist 'hello'
        lrange mylist 0 -1 hello world

        rpush
        在key的尾部添加元素,后进后出和队列一样
        例如:
        rpush mylist haoxiang
        rpush mylist lamp
        lrange mylist 0 -1  //结果是 haoxiang  lamp

        linsert
        在 key 对应的list的指定位置前或后添加字符串,从尾到头的方向为前
        例如:
        rpush mylist2 one
        rpush mylist2 two
        linsert mylist2 before two three
        lrange mylist2 0 -1 //结果是 one three two

        lset
        修改list中指定下标的值,下标方法和PHP数组的数组索引一样
        例如:
        rpush mylist3 hello
        lset mylist3 0 world
        lrange mylist3 0 -1  //结果是 world

        lrem
        从 key 对应的list中删除n个和value相同的元素(n<0 从尾部删除,n=0全部删除)
        例如:
        rpush mylist5 hello
        rpush mylist5 hello
        lrem mylist5 1 hello //
        
        ltrim
        保留指定key的值返回内的数据,其余部分删除
        例如:
        ltrim mylist6 1 -1

        lpop
        从list的头部删除元素,并返回删除元素

        rpop
        从list的尾部删除元素,并返回删除元素

        rpop|push
        从第一个list的尾部移除元素,并添加到第二个list的头部
        例如:
        rpop|push mylist1 mylist2

        lindex
        返回 list 中索引位置的值
        例如:
        lindex mylist5 0

        llen
        返回 list 中元素的个数

        lrange

  • 相关阅读:
    2015的最后一天
    网络类型IPv4和IPv6什么意思?区别?
    2:文档编辑生成目录相关方法说明
    TCP与UDP的区别
    vs 2012 InstallShield Limited Edition Project 打包windows服务解析
    百科编辑器ueditor应用笔记
    百度编辑器Ueditor 初始化加载内容失败解决办法
    矩阵-DirectX与OpenGL的不同
    ios系统中各种设置项的url链接
    简单的优化处理 By LINQ TO SQL
  • 原文地址:https://www.cnblogs.com/mr-amazing/p/3864921.html
Copyright © 2020-2023  润新知