概述
几乎所有的主流编程语言都提供了哈希(hash)类型,它们的叫法可能是哈希、字典、关联数组、映射。在 Redis 中,哈希类型是指值本身又是一个键值对结构,形如 key = "key",value = { {field1, value1 }, ..., {fieldN, valueN } },Redis 键值对和哈希类型二者的关系可以用下图来表示。
哈希类型中的映射关系通常称为 field-value,用于区分 Redis 整体的键值对(key-value),
注意这里的 value 是指 field 对应的值,不是键(key)对应的值,请注意 value 在不同上下
文的作用。
常见命令
HSET
设置 hash 中指定的字段(field)的值(value)。
语法:
HSET key field value [field value ...]
命令有效版本:2.0.0 之后
时间复杂度:插入一组 field 为 O(1), 插入 N 组 field 为 O(N)
返回值:添加的字段的个数。
示例:
HGET
获取 hash 中指定字段的值。
语法:
HGET key field
命令有效版本:2.0.0 之后
时间复杂度:O(1)
返回值:字段对应的值或者 nil。
示例:
HEXISTS
判断 hash 中是否有指定的字段。
语法:
HEXISTS key field
命令有效版本:2.0.0 之后
时间复杂度:O(1)
返回值:1 表示存在,0 表示不存在。
示例:
HDEL
删除 hash 中指定的字段。
语法:
HDEL key field [fiel