Redis HASH命令

Redis HASH命令教程

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

Redis HASH常用命令

命令 描述
HSET KEY field value 将哈希表 KEY 中的字段 field 的值设为 value 。
HSETNX KEY field value 只有在字段 field 不存在时,设置哈希表字段的值。
HMSET KEY field1 value1 field2 value2 同时将多个 field-value (域-值)对设置到哈希表 KEY 中。
HGET KEY field 获取存储在哈希表中指定字段的值。
HGETALL KEY 获取在哈希表中指定 KEY 的所有字段和值。
HMGET KEY field1 field2 获取所有给定字段的值。
HKEYS KEY 获取所有哈希表中的字段。
HVALS KEY 获取哈希表中所有值。
HLEN KEY 获取哈希表中字段的数量。
HINCRBY KEY field increment 为哈希表 KEY 中的指定字段的整数值加上增量 increment 。
HINCRBYFLOAT KEY field increment 为哈希表 KEY 中的指定字段的浮点数值加上增量 increment 。
HDEL KEY field1 field2 删除一个或多个哈希表字段。
HEXISTS KEY field 查看哈希表 KEY 中,指定的字段是否存在。
HSCAN KEY cursor [MATCH pattern] [COUNT count] 迭代哈希表中的键值对,类似 SCAN 命令。

案例

Redis Hash命令使用

192.168.98.70:6379> HMSET haicoder url "www.haicoder.net" module "Database" category "Redis" OK 192.168.98.70:6379> HGETALL haicoder 1) "url" 2) "www.haicoder.net" 3) "module" 4) "Database" 5) "category" 6) "Redis" 192.168.98.70:6379> HDEL haicoder category (integer) 1 192.168.98.70:6379> HGETALL haicoder 1) "url" 2) "www.haicoder.net" 3) "module" 4) "Database" 192.168.98.70:6379> DEL haicoder (integer) 1

我们首先,使用 HMSET 命令给键 haicoder 的 url 字段,module 字段和 category 字段分别设置值。接着,使用 HGETALL 命令,获取键 haicoder 的所有字段的值。

再次,使用 HDEL 命令,删除键 haicoder 的 category 字段。最后,我们使用 HGETALL 命令,获取键 haicoder 的所有字段的值,此时已经没有了 category 字段。

Redis HASH命令总结

Redis 的 hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。