Map集合,key-map时候这个值是一个map集合
#设置键值
127.0.0.1:6379> hset myhash name hello
(integer) 1
#获取hash值
127.0.0.1:6379> hget myhash name
"hello"
# 同时设置多个hash值(Redis-4.0版本以后已被官方启用,建议使用hset)
127.0.0.1:6379> HMSET myhash age 18 sex man
OK
#同时获取多个值
127.0.0.1:6379> HMGET myhash age name
1) "18"
2) "hello"
# 获取所有hash键值
127.0.0.1:6379> HGETALL myhash
1) "name"
2) "hello"
3) "age"
4) "18"
5) "sex"
6) "man"
# 删除hash中某一个指定的key字段
127.0.0.1:6379> HDEL myhash name
(integer) 1
127.0.0.1:6379> HGETALL myhash
1) "age"
2) "18"
3) "sex"
4) "man"
# 查看hash中键值对长度
127.0.0.1:6379> HLEN myhash
(integer) 2
# 判断hash中指定的字段是否存在(0表示不存在,1表示存在)
127.0.0.1:6379> HEXISTS myhash name
(integer) 0
127.0.0.1:6379> HEXISTS myhash age
(integer) 1
# 获取hash中所有的key
127.0.0.1:6379> HKEYS myhash
1) "age"
2) "sex"
# 获取hash中所有的值
127.0.0.1:6379> HVALS myhash
1) "18"
2) "man"
#如果不存在则设置,如果存在则不设置
127.0.0.1:6379> HSETNX myhash name hey
(integer) 1
127.0.0.1:6379> HSETNX myhash name world
(integer) 0