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 开放定址散列法 前面利用分离链接法解决了散列表插入冲突的问题,而除了分离链接法外,还可以使用开放定址法来解决散列表的冲突问题. 开放定 ...
随机推荐
- Android-Kotlin-单例模式
先看一个案例,非单例模式的案例: 描述Dog对象: package cn.kotlin.kotlin_oop08 class Dog(var name:String, var color:String ...
- [Proposal]Transform ur shapes!
[Name] Transform ur shapes [Motivation]市场上有很多涂鸦游戏,例如火柴人涂鸦,非常有趣 我们可以结合所学,将一些图形变形的操作融入进去,做一个我们自己的有趣的游戏 ...
- Scott-Knott test 配置与使用
安装最新版本的 R R安装镜像 Download R 3.3.0 for Windows (62 megabytes, 32/64 bit) 理由 Scott-Knott 包由 R 3.2.5 编译的 ...
- 如何获取 docker 容器(container)的 ip 地址
1. 进入容器内部后 cat /etc/hosts 会显示自己以及(– link)软连接的容器IP 2.使用命令 docker inspect --format '{{ .NetworkSetting ...
- C# 移动及限制移动距离
public class PlaneMove : MonoBehaviour { //h:水平方向的控制,v:前后方向的控制 float h,v; //Speed:飞机的飞行速度 public flo ...
- 设置 Nuget 本地源、在线私有源、自动构建打包
设置 Nuget 本地源.在线私有源.自动构建打包 本文演示如果在项目中生成 Nuget 包,并添加 Nuget 本地源,不用发布到 Nuget 服务器.再附带使用在线私有源的简单方法,以及提交代码自 ...
- 用WPF写一个登录界面,我想在输入完密码后按回车就能够验证登陆,而不需要用鼠标单击登陆按钮
在wpf中,将按钮的IsDefault设置为true
- 背水一战 Windows 10 (58) - 控件(集合类): ListViewBase - ListView, GridView
[源码下载] 背水一战 Windows 10 (58) - 控件(集合类): ListViewBase - ListView, GridView 作者:webabcd 介绍背水一战 Windows 1 ...
- 剑指offer编程题Java实现——面试题7相关题用两个队列实现一个栈
剑指offer面试题7相关题目:用两个队列实现一个栈 解题思路:根据栈的先入后出和队列的先入先出的特点1.在push的时候,把元素向非空的队列内添加2.在pop的时候,把不为空的队列中的size()- ...
- 【BZOJ1049】 [HAOI2006]数字序列
BZOJ1049 [HAOI2006]数字序列 dp好题? 第一问 第一问我会做!令\(b_i=a_i-i\),求一个最长不下降子序列. \(n-ans\)就是最终的答案. 第二问 好难啊.不会.挖坑 ...