Redis API的Hash类型使用和理解(三)

Hash类型

一、结构和命令

hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。
注意:field不能相同,value可以相同。

1)使用场景

  • 购物车
  • 存储用户信息

2)基本命令。

所有的Hash的命令都是以H开头的。

① hget key field : 获取hash key对应的field的value。
Redis API的Hash类型使用和理解(三)

② hset key field value : 设置hash key对应的field的value。
Redis API的Hash类型使用和理解(三)
注意:hset命令可以向已知的key对应的不同的filed的value。
③ hdel key field : 删除hash key对应的field的value。
Redis API的Hash类型使用和理解(三)
④ hexists key field : 判断hash key是否有field。
Redis API的Hash类型使用和理解(三)

⑤ hlen key: 判断hash key对应的field的数量。
Redis API的Hash类型使用和理解(三)
⑥ hmget key field field1 …:… 批量查看hash key对应的一批field对应的value值。
Redis API的Hash类型使用和理解(三)

⑦ hmset key field value filed1 value1 …: 批量设置hash key的一批的field的value值。
Redis API的Hash类型使用和理解(三)
⑦ hincrby key field value count : 让key 对应field的value自增count 。
Redis API的Hash类型使用和理解(三)
⑧ hgetall key : 返回hash key对应所有的field和value 。
Redis API的Hash类型使用和理解(三)
⑨ hvals key : 返回hash key对应所有的field的value 。
Redis API的Hash类型使用和理解(三)
⑩ hkeys key : 返回hash key对应所有的field 。
Redis API的Hash类型使用和理解(三)
注意:hgetall、hvals、hkeys 命令的时间复杂性O(n)。
⑪ hsetnx key field value : 设置hash key对应的field的value(如果field已经存在,则返回失败)。
Redis API的Hash类型使用和理解(三)
注意:如果field已经存在,则返回0。
⑫ hincrbyfloat key field floatCounter: incrby的浮点数版。
Redis API的Hash类型使用和理解(三)

二、Hash时间复杂性

Redis API的Hash类型使用和理解(三)