介绍:
Redis是采用字典结构以键值对的形式存储数据的,而散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他类型,一个散列类型键可以包含2的32次方-1个字段
散列类型适合存储对象:使用对象类别和ID构成键名,使用字段标示对象属性,字段值存储属性值。列如要存储ID为2的汽车对象,可以使用名为clolor、name和price的三个字段来存储该汽车的颜色、名称和价格。存储结构如下:
命令:
命令 | 说明 | 例子 |
HSET key field value | 给字段赋值,key为键,field为字段名,value为字段值,当field不存在执行插入,返回1,存在时执行修改,返回0 | HSET car:1 clolor 红色 |
HGET key field | 获取字段值,key为键,field为字段名 | HGET car:1 clolor |
HMSET key field1 value1 field2 value2... | 给键的多个字段赋值 | HMSET key field1 value1 ... |
HMGET key field1 field2... | 获取多个字段值 | HMGET key field1 field2... |
HGETALL key | 获取该键的说有字段值 | HGETALL car:1 |
HEXISTS key field | 判断字段是否存在,如果存在返回1,不存在返回0(如果键不存在也返回0) | HEXISTS car:1 color |
HSETNX key field value | 给字段赋值,如果字段已存在值,则不执行任何操作 | HSETNX car:1 color 红色 |
HINCRBY key field increment | 字段值增加指定的整数。散列类型没有HINCR命令,键不存在自动创建,返回最新值 | HINCRBY car:1 seats 1 |
HDEL key field1 field2... | 删除一个或多个字段,成功返回1,如不存在返回0 | HDEL car:1 color name |
HKEYS key | 获取键中的字段名 | HKEYS car:1 |
HVALS key | 获取键中的所有字段值 | HVALS car:1 |
HLEN key | 获取键中的字段数量 | HLEN car:1 |