Redis——redis中有关list类型数据的操作命令

一个key对应多个value;

多个value之间有顺序,最左侧是表头,最右侧是表尾;

每一个元素都有下标,表头元素的下标是0,依次往后排序,最后一个元素下标是列表长度-1;

每一个元素的下标又可以用负数表示,负下标表示从表尾计算,最后一个元素下标用-1表示;

元素在列表中的顺序或者下标由放入的顺序来决定。

通过key和下标来操作数据。 

 基本的操作命令

1)将一个或者多个值依次插入到列表的表头(左侧):lpush key value [value value .....]
       lpush list01 1 2 3  结果:3 2 1
       lpush list01 4 5     结果:5 4 3 2 1

2)获取指定列表中指定下标区间的元素:lrange key startIndex endIndex
       lrange list01 1 3  结果:4 3 2
       lrange list01 1 -2 结果: 4 3 2
       lrange list01 0 -1 结果:5 4 3 2 1

3)将一个或者多个值依次插入到列表的表尾(右侧):rpush key value [value value .....]
       rpush list02 a b c 结果:a b c
       rpush list02 d e   结果:a b c d e
       lpush list02 m n   结果: n m a b c d e

4)从指定列表中移除并且返回表头元素:lpop key
        lpop list02

5)从指定列表中移除并且返回表尾元素:rpop key
        rpop list02

6)获取指定列表中指定下标的元素:lindex key index
       lindex list01 2 结果:3

7)获取指定列表的长度:llen key
       llen list01

8)根据count值移除指定列表中跟value相等的数据:lrem key count value
      |->count>0:从列表的左侧移除count个跟value相等的数据;
      |->count<0:从列表的右侧移除count个跟vlaue相等的数据;
      |->count=0:从列表中移除所有跟value相等的数据
           lpush list03 a a b c a d e a b b  结果:b b a e d a c b a a
           lrem list03 2 a  结果:b b e d c b a a
           lrem list03 -1 a 结果:b b e d c b a
           lrem list03 0 a  结果:b b e d c b

9)截取指定列表中指定下标区间的元素组成新的列表,并且赋值给key:ltrim key startIndex endIndex
       lpush list04 1 2 3 4 5  结果:5 4 3 2 1
           ltrim list04 1 3
       lrange list04 0 -1      结果:4 3 2

10)将指定列表中指定下标的元素设置为指定值: lset key index value
       lset list04 1 10

11)将value插入到指定列表中位于pivot元素之前/之后的位置: linsert key before/after pivot vlaue
       linsert list04 before 10 50
       linsert list04 after 10 60

你可能感兴趣的:(Redis,redis)