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

Redis学习笔记(3)

2015-08-18 21:28 537 查看
列表类型:可以存储一个有序的字串列表,常用的操作是向列表的两端添加元素,或者会的列表的某个片段。

列表类型的内部都是使用双向链表实现的,所以向列表两端添加元素的时候时间复杂度为0(1),获取 越接近两端的元素速度越快。这意味着即使是一个有几千万个元素的列表,获取头部或尾部的10条记录也是极快的。

不过使用链表的代价是通过索引访问元素比较慢。

命令

1 向列表两端增加元素

LPUSH key value[value...] 从左边加
RPUSH key value[value...] 从右边加


2 从列表两端弹出元素

LPOP  key  左边弹出元素,并且列表把该元素移除
RPOP  key  右边弹出元素,并且列表把该元素移除


3 获取列表中元素的个数

LLEN key


4 获取列表片段

LRANGE key start  stop  该命令显示元素,但不会删除元素,元素是从左向右显示


LANGE命令也支持负数索引,表示从右边开始计算序数,如“-1”表示最右边地一个元素,“-2”右边第二个元素。以此类推。

注意:如果是start的索引位置比stop的索引位置靠后,则返回空列表。stop大于实际的索引范围,则返回到最右边的元素。

5 删除列表中指定的值

LREM  key count value  LREM命令会删除列表中前count个值为values的元素,返回值是实际删除的元素个数。根据count值的不同,LREM的命令执行也有差异
当count 》0时 LREM命令会从列表左边开始删除前count个值为value的元素
当count《 0时 LREM命令会从列表右边开始删除前count个值为value的元素
当count = 0时 LREM命令会删除所有值为value的元素


删除右边第一个2

6 获得/设置指定索引的元素值

LINDEX  key index
LSET  key  index value


7 只保留列表指定片段

LTRIM key start  end  删除指定范围内的其他元素


8 向列表插入元素

LINSERT key BEFORE|AFTER pivot value  首先从列表左到右找值pivot的元素,然后根据第二个参数命令插入值


9 将元素从一个列表转到另一个表

RPOPLPUSH source destination
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: