Redis散列操作
Redis的散列可以将多个键值对存储在一个Redis键里面。可以把这种数据聚集看作是数据库中的行或者文档数据库中的文档。
(添加和删除键值对)
HMGET : HMGET key-name key [key ...]-------------从散列里面获取一个或多个键的值
HMSET : HMSET key-name key value [key value ...]------------从散列里面获取一个或多个键的值
HDEL : HDEL key-name key [key ...] ------------------删除散列里面的一个或多个键值对,返回成功删除的键值对数量
HLEN : HLEN key-name -------------------------------返回散列包含的键值对数量
>>> import redis
>>> conn = redis.Redis(host='192.168.146.129',port=6379,db=0)
>>>
>>> conn.hmset('hash-key',{'k1':'v1','k2':'v2','k3':'v3'})
True
>>> conn.hmget('hash-key',['k2','k3'])
['v2', 'v3']
>>> conn.hlen('hash-key')
4
>>> conn.hdel('hash-key','k1','k3')
2
>>> conn.hmget('hash-key',['k2','k3'])
['v2', None]
>>> conn.hdel('hash-key','k1','k3')
0
(高级特性)
HEXISTS : HEXITS key-name key ------------------检查给定键是否存在于散列中
HKEYS : HKEYS key-name---------------------------获取散列中包含的所有键
HVALs : HVALS key-name---------------------------获取散列包含的所有值
HGETALL : HGETALL key-name --------------------获取散列包含的所有键值对
HINCRBY : HINCRRBY key-name key increment ---------------将键key存储的值加上整数increment
HINCRBYFLOAT : HINCRBYFLOAT key-name key increment -------------将键key存储的值加上浮点数increment
>>> conn.hmset('hash-key2',{'short':'hello','long':1000*''})
True
>>> conn.zcard('zset-key')
2
>>> conn.hkeys('hash-key2')
['long', 'short']
>>> conn.hexists('hash-key2','num')
False
>>> conn.hincrby('hash-key2','num')
1L
>>> conn.hexists('hash-key2','num')
True
>>> conn.hgetall('hash-key2')
{'short': 'hello', 'num': '', 'long': ''}
Redis散列操作的更多相关文章
- Redis散列(Hash)的相关命令
散列 就像一个减配的Redis 内部及其类似Java的Map 内容就是key:value结构 hash类型在面向对象编程的运用中及其适合,因为它可以直接保存编程语言中的实体类关系 增 hset hse ...
- redis 散列学习要点记录
散列类型键值也是种字典结构,存储了字段和字段值的映射,字段值只能是字符串,不可以是其他类型(redis数据类型都不可嵌套使用其他类型),散列类型键可以有2的32次方减1个字段 散列的命令组 hset ...
- StackExchange.Redis帮助类解决方案RedisRepository封装(散列Hash类型数据操作)
本文版权归博客园和作者本人共同所有,转载和爬虫请注明本系列分享地址:http://www.cnblogs.com/tdws/p/5815735.html 上一篇文章的不合理之处,已经有所修改. 今天分 ...
- Redis命令拾遗二(散列类型)
本文版权归博客园和作者吴双共同所有,欢迎转载,转载和爬虫请注明原文地址 :博客园蜗牛NoSql系列地址 http://www.cnblogs.com/tdws/tag/NoSql/ Redis命令拾 ...
- Redis数据类型之散列(hash)
1. 什么是散列 散列类似于一个字典,是一个<K, V>对的集合,不过这个key和value都只能是字符串类型的,不能嵌套,可以看做Java中的Map<String, String& ...
- Redis核心原理与实践--散列类型与字典结构实现原理
Redis散列类型可以存储一组无序的键值对,它特别适用于存储一个对象数据. > HSET fruit name apple price 7.6 origin china 3 > HGET ...
- shiro进行散列算法操作
shiro最闪亮的四大特征:认证,权限,加密,会话管理 为了提高应用系统的安全性,这里主要关注shiro提供的密码服务模块: 1.加密工具类的熟悉 首先来个结构图,看看shiro提供了哪些加密工具类: ...
- HashMap,Hash优化与高效散列
OverView Hash table based implementation of the Map interface. This implementation provides all of t ...
- Python与数据结构[4] -> 散列表[2] -> 开放定址法与再散列的 Python 实现
开放定址散列法和再散列 目录 开放定址法 再散列 代码实现 1 开放定址散列法 前面利用分离链接法解决了散列表插入冲突的问题,而除了分离链接法外,还可以使用开放定址法来解决散列表的冲突问题. 开放定 ...
随机推荐
- MVC+Nhibernate+spring.net(二)
在上一篇文章中我们已经把数据查了出来,现在我们来完善一下:前台使用easyui 首先我们将NHelper类完善一下 public class EmpDal { public IList<Emp& ...
- Spring IOC 容器源码分析 - 填充属性到 bean 原始对象
1. 简介 本篇文章,我们来一起了解一下 Spring 是如何将配置文件中的属性值填充到 bean 对象中的.我在前面几篇文章中介绍过 Spring 创建 bean 的流程,即 Spring 先通过反 ...
- 安装fastdfs文件系统
1.下载源码包 需要下载的源码包: fastDFS源代码:FastDFS_v5.01.tar.gz fastDFS的nginx模块源代码:fastdfs-nginx-module_v1.15.tar. ...
- isBalanced函数实现
原文:从一道面试题谈起,作者:360奇舞团 刘观宇 题目: 创建一个函数来判断给定的表达式中的大括号是否闭合,返回 true/false,对于空字符串,返回 true var expression = ...
- tomcat设置默认欢迎页、server.xml配置文件中的标签理解
一:要求:输入网址,不加文件名便可以访问默认页面 (1)项目中只有静态文件 方法:更改tomcat下的conf目录下的web.xml文件,如下图: <welcom-file-list>元素 ...
- 消息队列系统 -- RabbitMQ
消息队列系统 -- RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. MQ全称为Message Que ...
- Service Fabric学习-从helloworld开始(无状态服务)
原先做服务器程序, 都是部署在xx云上, 也没理解云是个啥, 不就是个服务器(虚拟机)租赁商吗? 好吧, 其实这个是IaaS, 而接下来要学习的ServiceFabric(以下简称SF)是PaaS. ...
- Hadoop和Apache Spark的异同
谈到大数据,相信大家对Hadoop和Apache Spark这两个名字并不陌生.但我们往往对它们的理解只是提留在字面上,并没有对它们进行深入的思考,下面不妨跟我一块看下它们究竟有什么异同. 1.解决问 ...
- JDK中线程组ThreadGroup
如果线程有100条...分散的不好管理... 线程同样可以分组ThreadGroup类. 线程组表示一个线程的集合.此外,线程组也可以包含其他线程组.线程组构成一棵树,在树中,除了初始线程组外,每个线 ...
- (转)9 db2trc案例2(1,2)
原文:http://book.51cto.com/art/200906/130068.htm 9.3.3 db2trc案例2(1) 在AIX操作系统上,系统原先运行良好,而后用户从DB2 V8 FP ...