Redis学习笔记(3)
2015-08-18 21:28
537 查看
列表类型:可以存储一个有序的字串列表,常用的操作是向列表的两端添加元素,或者会的列表的某个片段。
列表类型的内部都是使用双向链表实现的,所以向列表两端添加元素的时候时间复杂度为0(1),获取 越接近两端的元素速度越快。这意味着即使是一个有几千万个元素的列表,获取头部或尾部的10条记录也是极快的。
不过使用链表的代价是通过索引访问元素比较慢。
命令
1 向列表两端增加元素
2 从列表两端弹出元素
3 获取列表中元素的个数
4 获取列表片段
LANGE命令也支持负数索引,表示从右边开始计算序数,如“-1”表示最右边地一个元素,“-2”右边第二个元素。以此类推。
注意:如果是start的索引位置比stop的索引位置靠后,则返回空列表。stop大于实际的索引范围,则返回到最右边的元素。
5 删除列表中指定的值
删除右边第一个2
6 获得/设置指定索引的元素值
7 只保留列表指定片段
8 向列表插入元素
9 将元素从一个列表转到另一个表
列表类型的内部都是使用双向链表实现的,所以向列表两端添加元素的时候时间复杂度为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
相关文章推荐
- Redis介绍
- Redis GEO 特性简介
- redis启动脚本
- centos6.5编译redis3.0.3
- redis主从服务器的配置(入门)
- redis命令
- 客户端分片使用ShardedJedisPool,设置DB和超时时间
- redis在学生抢房应用中的实践小结
- 用redis实现支持优先级的消息队列
- redis 配置文件示例中文解释
- redis学习资料
- Redis on EC2的性能测试
- redis --- noSQL数据库
- Redis配置文件详解
- redis 启动时 Warning 警告解决及说明
- redis.conf配置详解
- linux下使用redis代理twmproxy
- Django+redis 实现登录
- Redis与SpringMVC整合
- 如何在web项目中添加redis缓存