美文网首页
Redis链表相关命令

Redis链表相关命令

作者: Dafanzi | 来源:发表于2017-01-08 14:13 被阅读0次

    redis链表存储一般操作

    flushdb会清除该库所有键值对
    lpush key value

    作用:把值插入链接头部
    lpush character b
    也可以一次插入多个值lpush character a b c d e

    rpush key value

    作用:把值插入链接尾部
    rpush character b
    也可以一次插入多个值rpush character a b c d e

    lrange key start stop

    作用:返回链表中[start,stop]中的元素
    lrange character 1 2
    lrange character 0 -1
    左数从0开始,右数从-1开始

    rpop key

    作用:返回并删除表尾元素

    lpop key

    作用:返回并删除表头元素

    lrem key count value

    作用:从key链表中删除value值,删除count个相同值后就结束`
    (正数从头删,负数从尾部删)

    ltrim key start stop剪切

    剪切key对应的链接,切[start,stop]一段,并把该段重新赋值给key

    lindex key poistion返回索引上的值

    如 index keyname 2(返回第三个元素上的值)

    llen key看这个链表有多长

    如 llen task
    (integer)3

    linsert key after|before search value

    作用:在key链表中寻找“search”值,并在找到的“search”值之前|之后插入vlaue。并且注意,一旦找到一个“search”后,命令就结束了,因此不会插入多个value

    rpoplpush sourcr dest

    作用:把source的尾部拿出来,放在dest的头部.并返回该单元值
    这个可以用在任务的安全分发机制中:1、rpoplpush task bak 2、接受返回值,并做业务处理 3、如果成功。rpop bak清除任务,如果不成功,下次从bak表里取出任务。

    brpop\blpop key timeout

    作用:等待弹出key的尾头元素
    timeout为等待时间
    如果timeout为0,则一直等待

    相关文章

      网友评论

          本文标题:Redis链表相关命令

          本文链接:https://www.haomeiwen.com/subject/nrbqbttx.html