Redis 数据结构之hash类型

2019-08-20 15:25:08 浏览数 (1)

hash类型

  • hash⽤于存储对象,对象的结构为属性、值
  • 值的类型为string

增加、修改

设置单个属性

hset key field value

  • 例1:设置键 user的属性name为Aron.li
代码语言:javascript复制
127.0.0.1:6379[1]> hset user name Aron.li
(integer) 1
127.0.0.1:6379[1]> hget user name
"Aron.li"
127.0.0.1:6379[1]> 

设置多个属性

hmset key field1 value1 field2 value2 ...

例2:设置键user2的属性name为Aron.li、属性age为30

代码语言:javascript复制
127.0.0.1:6379[1]> hmset user2 name Aron.li age 30
OK
127.0.0.1:6379[1]> hget user2 name
"Aron.li"
127.0.0.1:6379[1]> hget user2 age
"30"
127.0.0.1:6379[1]> hmget user2 name age
1) "Aron.li"
2) "30"
127.0.0.1:6379[1]> 

获取

获取指定键所有的属性

hkeys key

  • 例3:获取键user2的所有属性
代码语言:javascript复制
127.0.0.1:6379[1]> hkeys user2
1) "name"
2) "age"
127.0.0.1:6379[1]> 

获取⼀个属性的值

hget key field

  • 例4:获取键user2属性'name'的值
代码语言:javascript复制
127.0.0.1:6379[1]> hget user2 name
"Aron.li"
127.0.0.1:6379[1]> 

获取多个属性的值

hmget key field1 field2 ...

  • 例5:获取键user2属性nameage的值
代码语言:javascript复制
127.0.0.1:6379[1]> hmget user2 name age
1) "Aron.li"
2) "30"
127.0.0.1:6379[1]> 

获取所有属性的值

hvals key

  • 例6:获取键user2所有属性的值
代码语言:javascript复制
127.0.0.1:6379[1]> hvals user2
1) "Aron.li"
2) "30"
127.0.0.1:6379[1]> 

删除

  • 删除整个hash键及值,使⽤del命令
  • 删除属性,属性对应的值会被⼀起删除

hdel key field1 field2 ...

  • 例7:删除键user2的属性age
代码语言:javascript复制
127.0.0.1:6379[1]> hdel user2 age
(integer) 1
127.0.0.1:6379[1]> hkeys user2
1) "name"
127.0.0.1:6379[1]> hvals user2
1) "Aron.li"
127.0.0.1:6379[1]> 

0 人点赞