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 开放定址散列法 前面利用分离链接法解决了散列表插入冲突的问题,而除了分离链接法外,还可以使用开放定址法来解决散列表的冲突问题. 开放定 ...
随机推荐
- iOS图片按比例显示
只需加这么一段代码,如下: imageView.contentMode = UIViewContentModeScaleAspectFit; imageView.autoresizesSubviews ...
- ICCV2013、CVPR2013、ECCV2013目标检测相关论文
CVPapers 网址: http://www.cvpapers.com/ ICCV2013 Papers about Object Detection: 1. Regionlets for Ge ...
- 针对 easyui boolean 布尔值 的处理
1.html代码 <select class="easyui-combobox" data-options="editable:false,panelHeight: ...
- 【问题解决方案】Keras手写数字识别-ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接
参考:台大李宏毅老师视频课程-Keras-Demo 在载入数据阶段报错: ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接 Google之 ...
- mysql多列索引和最左前缀
数据库的索引可以加快查询速度,原因是索引使用特定的数据结构(B-Tree)对特定的列额外组织存放,加快存储引擎(索引是存储引擎实现)查找记录的速度.索引优化是数据库优化的最重要手段. 如果查询语句使用 ...
- switch...case... 语句中的类型转换
switch语句对case表达式的结果类型有如下要求: 要求case表达式的结果能转换为switch表示式结果的类型 并且如果switch或case表达式的是无类型的常量时,会被自动转换为此种常量的默 ...
- Apache JMeter的基本使用
安装 安装地址:http://jmeter.apache.org/download_jmeter.cgi 解压后运行jmeter.bat的批处理文件就可以了 JMeter测试脚本编写: 1,创建线程组 ...
- odoo开发笔记 -- odoo和postgresql数据库导入相关
odoo数据库 导入.导出 首先odoo框架下postgresql数据库中,表结构的存储方式: 存在id(小写),并没有所谓的外部ID 例如数据库中的国家表:模块名_tb_country (注意: ...
- 没啥事用C语言写一个Trie tree玩玩,支持中英文,用g++编译通过
#include <cstdio> #include <cstdlib> #include <vector> #define ALPHABETS 2600000 # ...
- mysql基础知识(3)
十六.组合查询 使用 union 来组合查询,如果第一个查询返回M行,第二个查询返回N行,那么组合查询的结果一般为 M+N 行. 注意:每个查询必须包含相同的行.表达式的聚集函数:默认会去除相同行.表 ...