Redis散列类型

散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他数据类型,换句话说,散列类型不能嵌套其他的数据类型。一个散列类型的键可以包含至多2^32-1个字段。除了散列类型,Redis的其他数据类型同样不支持数据类型嵌套。比如集合类型的每个元素都只能是字符串,不能是另一个集合或散列表等。
散列类型适合存储对象:使用对象类别和对象ID构成键名,使用字段表示对象的属性,而字段值则存储属性值。例如要存储ID为2的汽车对象,可以分别使用名为color、name和price的3个字段来存储该辆汽车的颜色、名称和价格。

赋值与取值:
HSET key field value
HGET key field
HMSET key field value [field value ...]
HMGET key field [field ...]
HGETALL key

判断字段是否存在:
HEXISTS key field

当字段不存在时赋值:
HSETNX key field value

增加数字:
HINCRBY key field increment

删除字段:
HDEL key field [field ...]

只获取字段名:
HKEYS key

只获取字段值:
HVALS key

获得字段数量:
HLEN key

原文地址:http://blog.51cto.com/11317783/2131748

时间: 2024-09-29 10:47:23

Redis散列类型的相关文章

Redis研究(四)—散列类型

散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他数据类型. 散列类型不能嵌套其他的数据类型.一个散列类型键可以包含至多2^32-1个字段. 一.介绍 散列类型适合存储对象:使用对象类别和ID构成键名,使用字段表示对象的属性,而字段值则存储属性值. 如果要关系数据中存储汽车对象: 数据是以二维表的形式存储的,这就要求所有的记录都有同样的属性,无法单独为某条记录增减属性.如果想要为ID为1的汽车增加生产日期属性,就需要把数据表更改

Redis 四:存储类型之散列类型

1.散列类型表达方式简介: =========================================== 键 字段 值 =========================================== 前轮 --->富士康 后轮 --->苹果 宝马: 挡风玻璃 --->加多宝 座椅 --->王老吉 方向盘 --->恒大冰泉 =========================================== 散列类型更好的作用于同一个对象,不同属性,对应不同

散列类型、运算符优先级和逻辑运算

散列类型一.集合  集合的相关操作     &  交集  取两个集合中的重复项     |    并集  两个集合去重组合     -   差集  A集合 - B集合 返回 B集合中没有的值  反之亦然   ^  将两个集合的重复项删除,将不重复项组合         增:             set.add(object)    添加一个object到集合中,此object必须为不可变对象,如提供可变对象将报TypeError错误             set.update(object

Redis散列表类型

散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他的数据类型. 一个散列类型键可以包含至多2^32 -1个字段. 命令 赋值 HSET key field value > HSET car price 500 (integer) 1 > HSET car name BMW (integer) 1 HSET 命令不区分插入和更新操作,当执行插入操作时HSET命令返回1,当执行更新操作时HSET命令返回0. 取值 HGET key

7、python基本数据类型之散列类型

前言:python的基本数据类型可以分为三类:数值类型.序列类型.散列类型,本文主要介绍散列类型. 一.散列类型 内部元素无序,不能通过下标取值 1)字典(dict):用 {} 花括号表示,每一个元素包含键(key)和值(value),key是一般是唯一的,如果重复最后的一个键值对   会替换前面的,value不需要唯一. 2)集合(set):用 {} 花括号表示,存放一个个元素,可以是任意类型,但元素不允许重复. 注意: d = {} 定义的是一个空字典 s = set() 定义的是一个空集合

Python散列类型和运算符

集合定义 集合的交 并 差 常见的运算符的用法 字典的定义 字典的 get  items  keys  pop  popitem  update  方法 三种逻辑运算 集合 集合特性 唯一性:不存在两个相同的元素 无序性:不存在索引 可变性:set集合是可变对象 两种定义方法(具有唯一性,自动去重) 直接定义   用大括号 set()   类型转换 三种运算 s1 & s2  交集 s1 |  s2  并集 s1 - s2   差集(补集,前一个有的,后一个没有的) 集合方法 增 add(值)

Redis常用命令(一) 字符串键、散列键

redis是key-value的数据结构,每条数据都是一个键值对 键的类型是字符串,因为默认是字符串所以都不用加引号 注意:键不能重复 值的类型分为五种: 字符串string 散列hash 列表list 集合set 有序集合zset string字符串键 set key value  # 设置的键不存在则为添加,如果设置的键已经存在则修改 set name daiby set key value [NX|XX]  # NX: 如果key不存在则成功,反之失败(不覆盖旧值)! XX: 如果key存

Redis数据操作--字符串与散列键的区别

| 如果散列键能做的事情,字符串键也能做,那么 我们为什么不直接使用字符串键呢? | 散列的好处 -- 将数据放在同一个地方     # 散列可以让我们将一些相关的信息储存在同一个额地方,而不是直接分散地     储存在整个数据中里面,这不仅方便了数据管理,还可以尽量避免误操作发生.     # 举个例子,要删除字符串键记录的消息信息,我们需要输入三个键,而删除     散列键储存的消息信息,我们只要输入一个键     字符串键:id >> 10086; sender >> pet

Redis数据类型之散列(hash)

1. 什么是散列 散列类似于一个字典,是一个<K, V>对的集合,不过这个key和value都只能是字符串类型的,不能嵌套,可以看做Java中的Map<String, String>. 2. 基本操作 赋值 散列操作不区分插入和更新,当设置一个field的时候如果不存在的话表示新增,如果已经存在的话则表示更新,之前的值会被覆盖掉.当设置值的时候如果field在之前不存在的话则返回1,视为新增,如果field已经存在的话,返回0,视为更新. hset <key> <