四.3 Redis 五大数据类型/结构的详细说明/详细使用( hash 哈希表数据类型详解和使用)
四.3 Redis 五大数据类型/结构的详细说明/详细使用( hash 哈希表数据类型详解和使用)
文章目录
- 四.3 Redis 五大数据类型/结构的详细说明/详细使用( hash 哈希表数据类型详解和使用)
- 2.hash 哈希表常用指令(详细讲解说明)
- 2.1 `hset <key><field><value>` 给`<key>`集合中的 `<field>`键赋值 `<value>`
- 2.2 `hget <key1><field>`从`<key1>`集合`<field>`取出 value
- 2.3 `hmset <key1><field1><value1><field2><value2>...` 批量设置 hash 的值
- 2.4 `hmget <key1><field1> <field2>... `批量取出 hash 的 filed 值
- 2.5 `hexists<key1><field>` 查看哈希表 key 中,给定域 field 是否存在
- 2.6 ` hkeys <key>` 列出该 hash 集合的所有 field
- 2.7 `hvals <key>` 列出该 hash 集合的所有 value
- 2.8 `hincrby <key><field><increment>`为哈希表 key 中的域 field 的值加上增量 1 -1
- 2.9 `hsetnx <key><field><value>`将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在时,还会成功
- 3. 最后:
hash哈希表 :一句话: Redis hash 是一个键值对集合,hash 适合用于存储对象, 类似 Java 里面的 Map<String,Object> 。
Redis hash 存储结构简单示意图:
关于hash 哈希表的命令,在 Redis 当中有如下这些:
这里我们介绍一些 hash 哈希表比较常用的一些命令,然后,举一反三,根据文档也可以对其它的命令上手学习使用了 。
2.hash 哈希表常用指令(详细讲解说明)
2.1 hset <key><field><value>
给<key>
集合中的 <field>
键赋值 <value>
127.0.0.1:6379> hset monster_100 id "100" name "jack"
注意: 也可以使用该指令,在已存在的哈希表当中添加新的,键值对
127.0.0.1:6379> hset monster_100 age "18"
2.2 hget <key1><field>
从<key1>
集合<field>
取出 value
127.0.0.1:6379> hget monster_100 name
"jack"
127.0.0.1:6379> hget monster_100 id
"100"
2.3 hmset <key1><field1><value1><field2><value2>...
批量设置 hash 的值
和 hset 是一样的。
127.0.0.1:6379> hmset monster_200 id "200" name "lihua"
2.4 hmget <key1><field1> <field2>...
批量取出 hash 的 filed 值
127.0.0.1:6379> hmget monster_100 "id" "name"
2.5 hexists<key1><field>
查看哈希表 key 中,给定域 field 是否存在
127.0.0.1:6379> hexists monster_100 "id"
2.6 hkeys <key>
列出该 hash 集合的所有 field
127.0.0.1:6379> hkeys monster_100
2.7 hvals <key>
列出该 hash 集合的所有 value
127.0.0.1:6379> hvals monster_100
注意: 如果指定的 哈希表不存在,则返回:
empty array
2.8 hincrby <key><field><increment>
为哈希表 key 中的域 field 的值加上增量 1 -1
127.0.0.1:6379> hincrby monster_100 age 1
(integer) 19
127.0.0.1:6379> hget monster_100 age
"19"
127.0.0.1:6379> hincrby monster_100 age 10
(integer) 29
127.0.0.1:6379> hget monster_100 age
"29"
127.0.0.1:6379>
**注意:**只有
"数字字符串"
才可以运算 + 1
2.9 hsetnx <key><field><value>
将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在时,还会成功
127.0.0.1:6379> hsetnx monster_100 sex f
注意: 如果给定域已经存在于哈希表当中, 那么命令将放弃执行设置操作。
3. 最后:
“在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。感谢你们,我们总会在某个时刻再次相遇。”