Redis 四:存储类型之散列类型
1.散列类型表达方式简介:
===========================================
键 字段 值
===========================================
前轮 --->富士康
后轮 --->苹果
宝马: 挡风玻璃 --->加多宝
座椅 --->王老吉
方向盘 --->恒大冰泉
===========================================
散列类型更好的作用于同一个对象,不同属性,对应不同的值的情况下;
比如使用字符串类型就无法很好的达到这一效果
===========================================
宝马:前轮 --->富士康
宝马:后轮 --->苹果
宝马:挡风玻璃 --->加多宝
宝马:座椅 --->王老吉
宝马:方向盘 --->恒大冰泉
===========================================
这样存储很容易的造成了不必要的空间浪费跟keys的无谓增多 .赋值 hset 宝马 前轮 富士康 .取值 hget 宝马 前轮 .批量赋值 hmset 宝马 前轮 富士康 后轮 苹果 .批量取值 hmget 宝马 前轮 后轮 .获取所有键值信息 hgetall .判断字段是否存在 hexists 宝马 前轮 存在返回1,不存在返回0 .判断字段是否存在,不存在则直接赋值 hsetnx 宝马 座椅 王老吉 ,如果"座椅"已存在,则不执行操作,如果"座椅"不存在,则设置"座椅",并将"座椅"的值设置为“王老吉” .增加数字(减的话设置为负数就好了)
hset 宝马 轮子个数 //设置宝马的轮子个数为3个
hincrby 宝马 轮子个数 //给轮子加1个 ,(命令将直接返回相加后的结果) .hdel 宝马 轮子个数
假如那天宝马不需要轮子了,可以使用hdel删除它 ===============================================
PS::
可以看出来redis的散列类型对于存储一对多这种关系
的数据尤为有用;因为那意味着不需要用字符串去存储
这些关系,大大的节约空间跟应用的复杂度;
===============================================
Redis 四:存储类型之散列类型的更多相关文章
- Redis核心原理与实践--散列类型与字典结构实现原理
Redis散列类型可以存储一组无序的键值对,它特别适用于存储一个对象数据. > HSET fruit name apple price 7.6 origin china 3 > HGET ...
- Redis命令拾遗二(散列类型)
本文版权归博客园和作者吴双共同所有,欢迎转载,转载和爬虫请注明原文地址 :博客园蜗牛NoSql系列地址 http://www.cnblogs.com/tdws/tag/NoSql/ Redis命令拾 ...
- 六、Redis五种类型 - hash(散列)类型
1.介绍 (1).hash也是一种字典结构,存储了字段(field)和字段值(value)的映射,字段值只能是字符串,不支持其他类型.(2).适合存储对象,对象列表和ID构成键名,字段表示对象的属性, ...
- Redis数据类型之散列类型hash
在redis中用的最多的就是hash和string类型. 问题 假设有User对象以JSON序列化的形式存储到redis中, User对象有id.username.password.age.name等 ...
- 7、python基本数据类型之散列类型
前言:python的基本数据类型可以分为三类:数值类型.序列类型.散列类型,本文主要介绍散列类型. 一.散列类型 内部元素无序,不能通过下标取值 1)字典(dict):用 {} 花括号表示,每一个元素 ...
- redis数据类型-散列类型
Redis数据类型 散列类型 Redis是采用字典结构以键值对的形式存储数据的,而散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他 ...
- Redis常用命令入门2:散列类型
散列命令 散列类型的键值其实也是一种字典解耦,其存储了字段和字段值的映射,但字段值只能是字符串,不支持其他数据类型,所以说散列类型不能嵌套其他的数据类型.一个散列类型的键可以包含最多2的32次方-1个 ...
- Redis从基础命令到实战之散列类型(Hash)
从上一篇的实例中可以看出,用字符串类型存储对象有一些不足,在存储/读取时需要进行序列化/反序列化,即时只想修改一项内容,如价格,也必须修改整个键值.不仅增大开发的复杂度,也增加了不必要的性能开销. 一 ...
- Redis自学笔记:3.3入门-散列类型
3.3散列类型 3.3.1介绍 散列类型不能嵌套其他数据类型,一个散列类型可以包含至多232-1个字段 散列类型适合存储对象:使用对象类别和ID构成键名,使用字段表示对象的数据, 而字段值则存储属性值 ...
随机推荐
- 解决postman https请求无返回数据的问题
1.点击右上角的扳手图标 2.点击settings 3.点击general 4.把 ssl certificate verification这项点击关闭
- PAT_A1136#A Delayed Palindrome
Source: PAT_A1136 A Delayed Palindrome (20 分) Description: Consider a positive integer N written in ...
- Day6 函数和模块的使用
函数和模块的使用 在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解. $$x_1 + x_2 + x_3 + x_4 = 8$$ 事实上,上面的问题等同于将8个苹果分成 ...
- [jzoj5791]【NOIP2008模拟】阶乘 (数学)
传送门 Description 有n个正整数a[i],设它们乘积为p,你可以给p乘上一个正整数q,使p*q刚好为正整数m的阶乘,求m的最小值. Input 共两行. 第一行一个正整数n. 第二行n个正 ...
- [jzoj 5782]【NOIP提高A组模拟2018.8.8】 城市猎人 (并查集按秩合并+复杂度分析)
传送门 Description 有n个城市,标号为1到n,修建道路花费m天,第i天时,若gcd(a,b)=m-i+1,则标号为a的城市和标号为b的城市会建好一条直接相连的道路,有多次询问,每次询问某两 ...
- AtCoder ARC 076D - Built?
传送门:http://arc076.contest.atcoder.jp/tasks/arc076_b 本题是一个图论问题——Manhattan距离最小生成树(MST). 在一个平面网格上有n个格点, ...
- PHP学习总结(11)——PHP入门篇之WAMPServer多站点配置
- mysql中explain用法和结果的含义
explain select * from user explain select * from user explain extended select * from user explain e ...
- 使用Html5和Js进行拖动
function init() { var source = document.getElementById("dragme"); ...
- 用Thinphp发送电子邮件的方法
好长时间没有动php了,突然想用thinkphp发送电子邮件,可是查阅了书籍都写的非常乱.没有继续看下去.这里找到了一个比較好的方法: 第一步:首先我们要引入一个外部类库:Mail.class.php ...