Redis操作list
来自:http://www.cnblogs.com/alex3714/articles/6217453.html
List操作,redis中的List在在内存中按照一个name对应一个List来存储。如图:

lpush(name,values)
|
1
2
3
4
5
6
7
8
|
# 在name对应的list中添加元素,每个新的元素都添加到列表的最左边# 如: # r.lpush('oo', 11,22,33) # 保存顺序为: 33,22,11# 扩展: # rpush(name, values) 表示从右向左操作 |
lpushx(name,value)
|
1
2
3
4
|
# 在name对应的list中添加元素,只有name已经存在时,值添加到列表的最左边# 更多: # rpushx(name, value) 表示从右向左操作 |
llen(name)
|
1
|
# name对应的list元素的个数 |
linsert(name, where, refvalue, value))
|
1
2
3
4
5
6
7
|
# 在name对应的列表的某一个值前或后插入一个新值# 参数: # name,redis的name # where,BEFORE或AFTER # refvalue,标杆值,即:在它前后插入数据 # value,要插入的数据 |
r.lset(name, index, value)
|
1
2
3
4
5
6
|
# 对name对应的list中的某一个索引位置重新赋值# 参数: # name,redis的name # index,list的索引位置 # value,要设置的值 |
r.lrem(name, value, num)
|
1
2
3
4
5
6
7
8
|
# 在name对应的list中删除指定的值# 参数: # name,redis的name # value,要删除的值 # num, num=0,删除列表中所有的指定值; # num=2,从前到后,删除2个; # num=-2,从后向前,删除2个 |
lpop(name)
|
1
2
3
4
|
# 在name对应的列表的左侧获取第一个元素并在列表中移除,返回值则是第一个元素# 更多: # rpop(name) 表示从右向左操作 |
lindex(name, index)
|
1
|
在name对应的列表中根据索引获取列表元素 |
lrange(name, start, end)
|
1
2
3
4
5
|
# 在name对应的列表分片获取数据# 参数: # name,redis的name # start,索引的起始位置 # end,索引结束位置 |
ltrim(name, start, end)
|
1
2
3
4
5
|
# 在name对应的列表中截取start-end索引之间的值# 参数: # name,redis的name # start,索引的起始位置 # end,索引结束位置 |
rpoplpush(src, dst)
|
1
2
3
4
|
# 从一个列表取出最右边的元素,同时将其添加至另一个列表的最左边# 参数: # src,要取数据的列表的name # dst,要添加数据的列表的name |
blpop(keys, timeout)
|
1
2
3
4
5
6
7
8
|
# 将多个列表排列,按照从左到右去pop对应列表的元素# 参数: # keys,redis的name的集合 # timeout,超时时间,当元素所有列表的元素获取完之后,阻塞等待列表内有数据的时间(秒), 0 表示永远阻塞# 更多: # r.brpop(keys, timeout),从右向左获取数据 |
brpoplpush(src, dst, timeout=0)
|
1
2
3
4
5
6
|
# 从一个列表的右侧移除一个元素并将其添加到另一个列表的左侧# 参数: # src,取出并要移除元素的列表对应的name # dst,要插入元素的列表对应的name # timeout,当src对应的列表中没有数据时,阻塞等待其有数据的超时时间(秒),0 表示永远阻塞 |
Redis操作list的更多相关文章
- Atitit.redis操作总结
Atitit.redis操作总结 1.1. 获取redis所有kv1 1.2. dbsize:返回当前数据库中key的数目 1 1.3. 一起吧所有key列出来1 1.4. Java连接redis ...
- 基于 php-redis 的redis操作
基于 php-redis 的redis操作 林涛 发表于:2016-5-13 12:12 分类:PHP 标签:php,php-redis,redis 203次 redis的操作很多的,下面的例子都是基 ...
- redis操作
测试环境redis操作 cd /export/servers/redis-2.8.9/src/./redis-cli -n 0 keys keys(pattern):返回满足给定pattern的所有k ...
- php的redis 操作类,适用于单台或多台、多组redis服务器操作
redis 操作类,包括单台或多台.多组redis服务器操作,适用于业务复杂.高性能要求的 php web 应用. redis.php: <?php /* redis 操作类,适用于单台或多台. ...
- Redis操作Set工具类封装,Java Redis Set命令封装
Redis操作Set工具类封装,Java Redis Set命令封装 >>>>>>>>>>>>>>>>& ...
- Redis操作List工具类封装,Java Redis List命令封装
Redis操作List工具类封装,Java Redis List命令封装 >>>>>>>>>>>>>>>> ...
- Redis操作Hash工具类封装,Redis工具类封装
Redis操作Hash工具类封装,Redis工具类封装 >>>>>>>>>>>>>>>>>> ...
- Redis操作字符串工具类封装,Redis工具类封装
Redis操作字符串工具类封装,Redis工具类封装 >>>>>>>>>>>>>>>>>>& ...
- 设计模式之PHP项目应用——单例模式设计Memcache和Redis操作类
1 单例模式简单介绍 单例模式是一种经常使用的软件设计模式. 在它的核心结构中仅仅包括一个被称为单例类的特殊类. 通过单例模式能够保证系统中一个类仅仅有一个实例并且该实例易于外界訪问.从而方便对实例个 ...
- Redis操作string
Redis简介: ''' redis: 缓存,例如两个个程序A,B之间要进行数据共享,A可以把数据存在redis(内存里),其他程序都可以访问redis里的数据, 这样通过中间商redis就实现了两个 ...
随机推荐
- Asp.Net Core WebApi (Swagger+EF Core/Code First)
Swagger简介: Swagger™的目标是为REST APIs 定义一个标准的,与语言无关的接口,使人和计算机在看不到源码或者看不到文档或者不能通过网络流量检测的情况下能发现和理解各种服务的功能. ...
- 华为oj之质数因子
题目: 质数因子 热度指数:5143 时间限制:1秒 空间限制:32768K 本题知识点: 排序 题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 ...
- Android Studio gradle插件版本和gradle版本对应关系
1.gradle插件版本配置位置: project对应的build.gradle文件中 buildscript { repositories { jcenter() } dependencies { ...
- OAuth2.0 授权许可 之 Authorization Code
写在前面: 在前一篇博客<OAuth2.0 原理简介>中我们已经了解了OAuth2.0的原理以及它是如何工作的,那么本篇我们将来聊一聊OAuth的一种授权许可方式:授权码(Authoriz ...
- 设计模式总结篇系列:桥接模式(Bridge)
在实际类设计过程中,有时会遇到此类情况:由于实际的需要,某个类具有两个或两个以上的维度变化,如果利用继承将每种可能的变化情况都定义成一个类,一是会导致类膨胀的问题,二是以后不太好维护和并且违背类的设计 ...
- C#线程安全使用(一)
关于Task的使用,一直都是半知半解,最近终于有时间详细的看了一遍MSDN,作为备忘录,将心得也记录下来和大家分享. 首先,根据MSDN的描述,Task是FrameWork4引进的新功能,他和ConC ...
- Kubernetes系列02—Kubernetes设计架构和设计理念
本文收录在容器技术学习系列文章总目录 1.Kubernetes设计架构 Kubernetes集群包含有节点代理kubelet和Master组件(APIs, scheduler, etc),一切都基于分 ...
- [Go] go get获取官方库被墙解决
1.直接在github上clone对应的代码 , 地址为: https://github.com/golang/xxxxxxx.git xxxxxxx为所缺的库名 , 比如net库 text库 h ...
- Oracle day05 建表_约束
表的创建 标准的建表语法 : CREATE TABLE [schema.] table (column datatype [DEFAULT expr], ... ); 使用子查询创建表的语法 CREA ...
- Vue利用canvas实现移动端手写板
<template> <div class="hello"> <!--touchstart,touchmove,touchend,touchcance ...