您的位置:首页 > 数据库 > Redis

redis-list(列表)

2016-05-02 13:39 585 查看
redis的列表是使用双向链表实现的。所以向两端添加元素时间复杂度为0(1),不过使用链表的代价是查找较慢。

1、lpush 、rpush (向左端、右端添加元素),lrange 取一定范围的元素的值,

127.0.0.1:6379> lpush listexample 2

(integer) 1

127.0.0.1:6379> lpush listexample 3 4 5 //一次插入多个元素

(integer) 4

127.0.0.1:6379> lrange listexample 0 -1

1) "5"

2) "4"

3) "3"

4) "2"

127.0.0.1:6379> rpush listexample 7 8 9

(integer) 7

127.0.0.1:6379> lrange listexample 0 -1

1) "5"

2) "4"

3) "3"

4) "2"

5) "7"

6) "8"

2、lpop 、rpop 从列表两端弹出元素

3、llen 获取表中元素的个数

4、lrem 删除列表中指定的值 lrem key count value (删除key 中 值为value的键,一共删除为count个)

注:当count > 0 时,从左连开始删除 ,当count<=时,从右边开始删除 , 当count=0时,全部删除

127.0.0.1:6379> lrange listexample 0 -1

1) "5"

2) "5"

3) "5"

4) "5"

5) "5"

6) "5"

7) "5"

8) "4"

9) "3"

10) "2"

11) "7"

12) "8"

13) "9"

127.0.0.1:6379> lrem listexample 3 5 //删除3个值为5的元素

(integer) 3

127.0.0.1:6379> lrange listexample 0 -1

1) "5"

2) "5"

3) "5"

4) "5"

5) "4"

6) "3"

7) "2"

8) "7"

9) "8"

10) "9"

127.0.0.1:6379> lpush listexample 3 5 6 7 8 5 3 2 5 9 5

(integer) 17

127.0.0.1:6379> lrange listexample 0 -1

1) "5"

2) "9"

3) "5"

4) "2"

5) "3"

6) "5"

7) "8"

8) "7"

9) "6"

10) "5"

11) "3"

12) "4"

13) "3"

14) "2"

15) "7"

16) "8"

17) "9"

127.0.0.1:6379> lrem listexample -2 5

(integer) 2

127.0.0.1:6379> lrange listexample 0 -1

1) "5"

2) "9"

3) "5"

4) "2"

5) "3"

6) "8"

7) "7"

8) "6"

9) "3"

10) "4"

11) "3"

12) "2"

13) "7"

14) "8"

15) "9"

5、lindex key inde (获得指定索引的元素值) lindex key index

lset kye index value (设置索引的元素值)

127.0.0.1:6379> lindex listexample 3

"2"

127.0.0.1:6379> lindex listexaple -1

(nil)

127.0.0.1:6379> lindex listexample -1

"9"

127.0.0.1:6379> lset listexample 4

(error) ERR wrong number of arguments for 'lset' command

127.0.0.1:6379> lpush listexample 44

(integer) 16

127.0.0.1:6379> lset listexample 5 5555

OK

127.0.0.1:6379> lrange listexample 0 -1

1) "44"

2) "5"

3) "9"

4) "5"

5) "2"

6) "5555"

7) "8"

8) "7"

9) "6"

10) "3"

11) "4"

12) "3"

13) "2"

14) "7"

15) "8"

16) "9"

6、ltrim key start end (只保留列表指定的片段)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: