redis: Hash集合类型(六)

存值:hset myhash name applesnt

取值:hget myhash name

批量存值:hmset myhash name lisi address bj age 12

批量取值:hmget name lisi bj

获取所有键值对:hgetall myhash

127.0.0.1:6379> hset myhash name applesnt #存值
(integer) 1
127.0.0.1:6379> hget myhash name #取值
"applesnt"
127.0.0.1:6379> hmset myhash name lisi address bj age 12 #批量存值
OK
127.0.0.1:6379> hmget myhash name address age #批量取值
1) "lisi"
2) "bj"
3) "12"
127.0.0.1:6379> hgetall myhash #获取键值对
1) "name"
2) "lisi"
3) "address"
4) "bj"
5) "age"
6) "12"

删除指定字段:hdel myhash age address

127.0.0.1:6379> hgetall myhash
1) "name"
2) "lisi"
3) "address"
4) "bj"
5) "age"
6) "12"
127.0.0.1:6379> hdel myhash age address #把age和address删除
(integer) 2
127.0.0.1:6379> hgetall myhash
1) "name"
2) "lisi"

获取Hash中有几个键值对:hlen myhash

127.0.0.1:6379> hgetall myhash
1) "name"
2) "lisi"
127.0.0.1:6379> hlen myhash
(integer) 1

判断Hash中的键是否存在:hexists myhash address

127.0.0.1:6379> hexists myhash address #存在
(integer) 1
127.0.0.1:6379> hexists myhash email #不存在
(integer) 0

获取Hash中所有的key:hkeys myhash

获取Hash中所有的value:hvals myhash

127.0.0.1:6379> hkeys myhash #获取myhash所有的key
1) "name"
2) "age"
3) "address"
127.0.0.1:6379> hvals myhash #获取myhash所有的value
1) "lisi"
2) "33"
3) "bj"

存值(自判断,有则赋值失败,无这创建):hsetnx user name haha

127.0.0.1:6379> hmget user name address
1) "king"
2) "beijing"
127.0.0.1:6379> hsetnx user name haha #name存在 创建失败
(integer) 0
127.0.0.1:6379> hsetnx user age 22 #age不存在 创建成功
(integer) 1

猜你喜欢

转载自www.cnblogs.com/applesnt/p/12642309.html