7.Redis 的数据类型之一:Hash (哈希)

zhanglei 2022年07月24日 245次浏览

7.Redis 的数据类型之一:Hash (哈希)

Hash 类型

即:Map 集合,储存 field-value 键值对!

Hash 类型常用 redis 命令

#########################################################
# hset key field value  增一个字段和对应的值
# hsetnx key field value 增一个字段(字段不存在时)
#########################################################
# hdel key field        删除一个字段
#########################################################
# hgetall key           查询所有的字段和值
# hkeys key				查询所有的字段
# hvals key				查询所有的值
# hget key field 		查询值(根据字段)
##########################################################
# hincrby key field increment  修改(增加)一个字段的值
###########################################################
# hexists key field		判断某个字段是否存在
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> clear
127.0.0.1:6379> hset map field1 zhanglei
(integer) 1
127.0.0.1:6379> hset map field2 19
(integer) 1
127.0.0.1:6379> hkeys map
1) "field1"
2) "field2"
127.0.0.1:6379> hvals map
1) "zhanglei"
2) "19"
127.0.0.1:6379> hget map field1
"zhanglei"
127.0.0.1:6379> hget map field2
"19"
127.0.0.1:6379> hgetall map
1) "field1"
2) "zhanglei"
3) "field2"
4) "19"
127.0.0.1:6379> hlen map
(integer) 2
127.0.0.1:6379> hdel map field2
(integer) 1
127.0.0.1:6379> keys *
1) "map"
127.0.0.1:6379> hkeys map
1) "field1"
127.0.0.1:6379> hvals map
1) "zhanglei"
127.0.0.1:6379> hexists map field1
(integer) 1
127.0.0.1:6379> hexists map field2
(integer) 0
127.0.0.1:6379> 
#########################################################
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> clear
127.0.0.1:6379> hsetnx map field1 6
(integer) 1
127.0.0.1:6379> hsetnx map field2 7
(integer) 1
127.0.0.1:6379> hkeys map
1) "field1"
2) "field2"
127.0.0.1:6379> hincrby map field1 3
(integer) 9
127.0.0.1:6379> hget map field1
"9"
127.0.0.1:6379> hkeys map
1) "field1"
2) "field2"
127.0.0.1:6379> hvals map
1) "9"
2) "7"

Hash 类型的使用情景

hash (哈希)更适合对象的存储,String 更加适合存储字符串