Redis Hash 基础
Redis 哈希(Hash)类型是键值对的集合,字段与值均支持字符串或数字。它非常适合建模用户信息、配置项等对象类数据。底层通过压缩列表或哈希表优化存储,空间利用率高且查询效率快,是 Redis 中处理结构化数据的核心类型之一。
在 Redis 内部,虽然整体结构也是哈希,但 Hash 类型的 Key 下可以嵌套多个 Field。Field 相当于子 Key,每个 Field 对应一个 Value,支持单字段或多字段的增删改查、存在性判断以及原子自增操作。
hset
hset 用于设置哈希表中某个字段的值。如果字段已存在,则更新其值;如果不存在,则创建新字段并返回 1。
语法:
hset key field value
一个 Key 下可以包含多个 Field,每个 Field 与 Value 一一对应。当对同一个 Field 再次执行 hset 时,原有的 Value 会被覆盖。

hget
通过指定的 Key 和 Field 获取对应的 Value。注意,该命令一次只能获取单个字段的值。
语法:
hget key field
如果需要批量获取多个字段的值,后续会介绍专门的指令。

hdel
删除哈希表中指定的字段及其对应的值。需要注意的是,hdel 仅删除字段,不会直接删除整个 Key(除非该 Key 下没有其他字段了)。
语法:
hdel key field
例如,删除 f2 后,Key 依然存在,访问其他字段 f1 仍然有效。

hkeys
获取指定 Key 下所有的字段名(Field)。返回值是一个包含所有 Field 的数组。
语法:
hkeys key
这里有一个常见的误区:hkeys * 并不会匹配多个哈希键,因为 * 不是通配符用法,hkeys 只能接受具体的键名。如果传入不存在的键或错误用法,可能返回空数组。











