目录
一、介绍
Redis中的Hash是一个键值对集合,是String类型的field和value的映射表,特别适合存储对象,类似于Java中的Map<String, Object>。使用过程中的案例,将用户ID设定为key,存储的value为用户对象(Java Bean)的姓名、年龄、生日等信息。
Hash类型对应的数据结构是两种,ziplist(压缩列表)和hashtable(哈希表),当filed-value长度较短且个数较少时,使用ziplist,否则使用hashtable。
二、常用命令
2.1. hset
hset <key><field><value>给<key>集合中的<field>键赋值<value> ,可同时设置多个
<field>和<value>,相当于hmset的功能
2.2. hget
hget <key><field><value>给<key>集合的<field>取出<value>
2.3. hmset
hmset <key><field1><value1><field2><value2>...批量设置hash的值
Redis4.0版本以后该方法被弃用
2.4. hexists
hexists <key><field>查看哈希表key中,给定域field是否存在,1存在/0不存在
2.5. hkeys
hkeys <key>列出该hash集合的所有<filed>
2.6. hvals
hvals <key>列出该hash集合的所有<value>
2.7. hincrby
hincrby <key><field><increment>为哈希表key中的域的值加上增量
2.8. hsetnx
hsetnx <key><field><value>将哈希表key的域field的值设置为value,当且仅当域filed不存在,0失败/1成功