Redis的数据结构之哈希
存储Hash
String key和String Value的Map容器
每一个Hash可以存储4294967295个键值对
存储Hash常用命令:
赋值
取值
删除
增加数字
判断字段是否存在
获取hash属性个数
获取hash所有属性名称
定义h1 以及username和password字段 值分别是javaxk 123456
hget单个字段设置
127.0.0.1:6379> hset h1 username javaxk
(integer) 1
127.0.0.1:6379> hset h1 password 123456
(integer) 1
127.0.0.1:6379> hget h1 username
"javaxk"
127.0.0.1:6379> hget h1 password
"123456"
hmset 多个字段一起设置
127.0.0.1:6379> hmset h2 username open123 password 23456
OK
127.0.0.1:6379> hmget h2 username
1) "open123"
127.0.0.1:6379> hmget h2 password
1) "23456"
127.0.0.1:6379> hmget h2 username password
1) "open123"
2) "23456"
127.0.0.1:6379> hgetall h2
1) "username"
2) "open123"
3) "password"
4) "23456"
hdel删除属性
可以一次删除一个或者多个
127.0.0.1:6379> hdel h2 username password
(integer) 2
127.0.0.1:6379> hgetall h2
(empty list or set)
hincrby增加数字
127.0.0.1:6379> hset h1 age 20
(integer) 1
127.0.0.1:6379> hincrby h1 age 5
(integer) 25
hexists判断字段是否存在 1表示存在 0表示不存在
127.0.0.1:6379> hexists h1 age
(integer) 1
127.0.0.1:6379> hexists h1 age2
(integer) 0
hlen获取hash属性个数
127.0.0.1:6379> hlen h1
(integer) 3
127.0.0.1:6379> hlen h2
(integer) 0
hkeys获取所有属性名称
127.0.0.1:6379> hkeys h1
1) "username"
2) "password"
3) "age"
127.0.0.1:6379> hkeys h2
(empty list or set)
hvals获取所有属性值
127.0.0.1:6379> hvals h1
1) "javaxk"
2) "123456"
3) "25"
127.0.0.1:6379> hvals h2
(empty list or set)
127.0.0.1:6379>