Redis五种常见的数据结构:Hash
Hash 结构
Redis hash 看起来就像⼀个 “hash” 的样⼦,由键值对组成:
127.0.0.1:6379> hset user:1:info username admin
1
127.0.0.1:6379> hset user:1:info age 26
1
127.0.0.1:6379> hget user:1:info username
admin
127.0.0.1:6379> hget user:1:info age
26
通过上⾯的代码实例我们可以得知Hash 的数据结构为:
我们创建好了⼀个 hash 的结构,也可以追加⾥⾯的field字段和值
127.0.0.1:6379> hset user:1:info class 301
(integer) 1
127.0.0.1:6379> hget user:1:info class
"301"
127.0.0.1:6379> hgetall user:1:info
1) "username"
2) "admin"
3) "age"
redis支持的数据结构4) "26"
5) "class"
6) "301"
我们也可以通过不同key,来指定不同的学⽣:
id 为 1 :user:1:info
id 为 2 :user:2:info
因此 Hash 便于表⽰ objects,实际上,你可以放⼊⼀个 hash 的域数量实际上没有限制(除了可⽤内存以外)。所以,你可以在你的应⽤中以不同的⽅式使⽤ hash。
Hash 常⽤的命令
相较于与 String 的命令,Hash 的命令⼤都是以 “H” 开头的。
命令描述
HGET key field获取存储在哈希表中指定字段的值
HSET key field value将哈希表 key 中的字段 field 的值设为 value
HDEL key field1 [field2]删除⼀个或多个哈希表字段
127.0.0.1:6379> hget user:2:info username
"xiaohua"
127.0.0.1:6379> hdel user:2:info username
(integer) 1
127.0.0.1:6379> hget user:2:info username
(nil)
命令描述
HEXISTS key field查看哈希表 key 中,指定的字段是否存在
HLEN key获取哈希表中字段的数量
HKEYS key获取所有哈希表中的字段
HGETALL key获取在哈希表中指定 key 的所有字段和值
HVALS key获取哈希表中所有值
127.0.0.1:6379> hexists user:2:info username
(integer) 0
127.0.0.1:6379> hset user:2:info username xiaohua
(integer) 1
127.0.0.1:6379> hexists user:2:info username
(integer) 1
127.0.0.1:6379> hlen user:2:info
(integer) 1
127.0.0.1:6379> hset user:2:info age 26
(integer) 1
127.0.0.1:6379> hlen user:2:info
(integer) 2
127.0.0.1:6379> hkeys user:2:info
1) "username"
2) "age"
127.0.0.1:6379> hgetall user:2:info
1) "username"
2) "xiaohua"
3) "age"
4) "26"
127.0.0.1:6379> hvals user:2:info
1) "xiaohua"
2) "26"
命令描述
HMGET key field1 [field2]获取所有给定字段的值HMSET key field1 value1 [field2 value2 ]同时将多个 field-value (域-值)对设置到哈希表 key 中
2) "26"
127.0.0.1:6379> hmset user:2:info class 301 father xiaowang mother xiaocai
OK
127.0.0.1:6379> hkeys user:2:info
1) "username"
2) "age"
3) "class"
4) "father"
5) "mother"
127.0.0.1:6379> hgetall user:2:info
1) "username"
2) "xiaohua"
3) "age"
4) "26"
5) "class"
6) "301"
7) "father"
8) "xiaowang"
9) "mother"
10) "xiaocai"
Hash 还有很多其他的命令,⼤家可以看下这个链接:
之前准备学习的时候写博客,可是都没有坚持下去,希望这次可以有始有终。
Redis 坚持第⼀天 :
Redis 坚持第⼆天 :
Redis 坚持第三天 :
Redis 坚持第四天 :
1.
2.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论