redis的list类型!!!!
list类型
list类型是按照插入顺序排序的字符串链表,可在(left)头部和(right)尾部插入值,效率高。
list增操作
若插入时,该键不存在,则会创建。若所有元素被移除,该键也会被删除。
127.0.0.1:6379>lpush name zhangsan lisi wangwu --返回3,该list从头部插入三个元素。
127.0.0.1:6379>rpush name zhangsan1 lisi1 wangu1 --返回3,该list从尾部插入三个元素。
127.0.0.1:6379>lpushx name maliu --返回7,若该键存在,会从list的头部插入,该键不存在,不执行操作。
127.0.0.1:6379>rpushx name maliu1 --返回8,若该键存在,会从list的尾部插入,该键不存在,不执行操作。
127.0.0.1:6379>linsert name before lisi1 abc --返回9,在lisi1前面插入元素abc
list的减操作
127.0.0.1:6379>lpop name --返回maliu,从头部弹出值,若该值不存在则返回nil。
127.0.0.1:6379>rpop name --返回maliu1,从尾部弹出值,该值不存在返回nil。
list的查操作
127.0.0.1:6379>llen name --返回6,list中的元素数量。
127.0.0.1:6379>lrange name 1 5 --返回lisi zhangsan zhansan1 lisi1 wangwu1 1为偏移量,5为元素数量。返回指定元素的列表
127.0.0.1:6379>lindex name 1 --返回lisi,返回指定索引的元素值,超出范围返回nil
list的删除操作
127.0.0.1:6379>lrem name 2 lisi --返回1,返回的是被删除的元素数量。删除前2个值等于lisi的元素,如果等于负值,从尾向头遍历删除,如果等于0,删除list里所有等于lisi的元素。key不存在,返回0
127.0.0.1:6379>ltrim name 1 2 --返回剩余的元素列表,仅保留指定范围内的元素。
list的改操作
127.0.0.1:6379>lset name 0 zhang --返回OK