• 技术文章 >数据库 >Redis

    关于redis之lpush、rpush、lset、lrem

    藏色散人藏色散人2020-10-27 14:07:11转载1430
    下面由Redis教程栏目给大家介绍redis之lpush、rpush、lset、lrem,希望对需要的朋友有所帮助!

    1.lpush

    在key对应 list的头部添加字符串元素

    2.rpush

    在key对应 list 的尾部添加字符串元素

    3.linsert

    在key对应 list 的特定位置之前或之后添加字符串元素

    redis 127.0.0.1:6379> rpush mylist3 "hello"
    (integer) 1
    redis 127.0.0.1:6379> rpush mylist3 "world"
    (integer) 2
    redis 127.0.0.1:6379> linsert mylist3 before "world" "there"
    (integer) 3
    redis 127.0.0.1:6379> lrange mylist3 0 -1
    1) "hello"
    2) "there"
    3) "world"
    redis 127.0.0.1:6379>

    在此处我们先插入了一个 hello,然后在 hello 的尾部插入了一个 world,然后又在 world 的

    前面插入了 there。

    4.lset

    设置list中指定下标的元素值(下标从0开始)

    redis 127.0.0.1:6379> rpush mylist4 "one"
    (integer) 1
    redis 127.0.0.1:6379> rpush mylist4 "two"
    (integer) 2
    redis 127.0.0.1:6379> rpush mylist4 "three"
    (integer) 3
    redis 127.0.0.1:6379> lset mylist4 0 "four"
    OK
    redis 127.0.0.1:6379> lset mylist4 -2 "five"
    OK
    redis 127.0.0.1:6379> lrange mylist4 0 -1
    1) "four"
    2) "five"
    3) "three"
    redis 127.0.0.1:6379>

    在此处我们依次插入了 one,two,three,然后将标是 0 的值设置为 four,再将下标是-2的值设

    置为 five。

    5.lrem

    从key对应 list 中删除 count 个和 value 相同的元素。

    count>0 时,按从头到尾的顺序删除,具体如下:

    redis 127.0.0.1:6379> rpush mylist5 "hello"
    (integer) 1
    redis 127.0.0.1:6379> rpush mylist5 "hello"
    (integer) 2
    redis 127.0.0.1:6379> rpush mylist5 "foo"
    (integer) 3
    redis 127.0.0.1:6379> rpush mylist5 "hello"
    (integer) 4
    redis 127.0.0.1:6379> lrem mylist5 2 "hello"
    (integer) 2
    redis 127.0.0.1:6379> lrange mylist5 0 -1
    1) "foo"
    2) "hello"
    redis 127.0.0.1:6379>

    count<0 时,按从尾到头的顺序删除,具体如下:

    redis 127.0.0.1:6379> rpush mylist6 "hello"
    (integer) 1
    redis 127.0.0.1:6379> rpush mylist6 "hello"
    (integer) 2
    redis 127.0.0.1:6379> rpush mylist6 "foo"
    (integer) 3
    redis 127.0.0.1:6379> rpush mylist6 "hello"
    (integer) 4
    redis 127.0.0.1:6379>lrem mylist6 -2 "hello"
    (integer) 2
    redis 127.0.0.1:6379> lrange mylist6 0 -1
    1) "hello"
    2) "foo"
    redis 127.0.0.1:6379>

    count=0 时,删除全部,具体如下:

    redis 127.0.0.1:6379> rpush mylist7 "hello"
    (integer) 1
    redis 127.0.0.1:6379> rpush mylist7 "hello"
    (integer) 2
    redis 127.0.0.1:6379> rpush mylist7 "foo"
    (integer) 3
    redis 127.0.0.1:6379> rpush mylist7 "hello"
    (integer) 4
    redis 127.0.0.1:6379> lrem mylist7 0 "hello"
    (integer) 3
    redis 127.0.0.1:6379> lrange mylist7 0 -1
    1) "foo"
    redis 127.0.0.1:6379>

    以上就是关于redis之lpush、rpush、lset、lrem的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除
    专题推荐:redis lpush rpush lset lrem
    上一篇:分析redis原理及实现 下一篇:教你正确地使用Redis的SETNX实现锁机制

    相关文章推荐

    • Redis6.0到底为何引入多线程?• windows 下如何安装php redis• 教你通过Homebrew安装配置Redis• 分析redis原理及实现

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网