【Redis—06】Redis五种数据类型-哈希类型操作

版权声明:作者:人学物理死的早 出处:https://blog.csdn.net/weixin_39561473 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。 https://blog.csdn.net/weixin_39561473/article/details/89279275

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。

key value
stu

(field:value)id:1,name:'人学物理死的早',age:18

常用操作:

1、hset

将哈希表 key 中的域 field 的值设为 value

127.0.0.1:6379> hset k1 id 1 name 人学物理死的早 age 18
(integer) 3

2、hget

获取哈希表 key 中给定域 field 的值

127.0.0.1:6379> hget k1 id
"1"
127.0.0.1:6379> hget k1 age
"18"

 

3、hmset

同时将多个 field-value (域-值)对设置到哈希表 key 中

127.0.0.1:6379> hmset k2 id 1 name lx age 18
OK

 

4、hmget

获取哈希表 key 中一个或多个给定域的值

127.0.0.1:6379> hmget k2 id name age
1) "1"
2) "lx"
3) "18"

5、hgetall

获取哈希表 key 中所有的域和值

127.0.0.1:6379> hgetall k2
1) "id"
2) "1"
3) "name"
4) "lx"
5) "age"
6) "18"

 

6、hdel

删除哈希表 key 中的一个或多个指定域field

127.0.0.1:6379> hdel k1 name
(integer) 1
127.0.0.1:6379> hgetall k1
1) "id"
2) "1"
3) "age"
4) "18"

 

7、 hkeys

查看哈希表 key 中的所有field域

127.0.0.1:6379> hkeys k1
1) "id"
2) "age"

127.0.0.1:6379> hkeys k2
1) "id"
2) "name"
3) "age"

 

8、hvals

查看哈希表 key 中所有域的值

127.0.0.1:6379> hvals k1
1) "1"
2) "18"
127.0.0.1:6379> hvals k2
1) "1"
2) "lx"
3) "18"

 

9、类型

127.0.0.1:6379> type k2
hash

10、其他操作

 hlen:获取哈希表 key 中域field的个数

127.0.0.1:6379> hlen k1
(integer) 2
127.0.0.1:6379> hlen k2
(integer) 3

 hexists:查看哈希表 key 中,给定域 field 是否存在

127.0.0.1:6379> hexists k1 name
(integer) 0
127.0.0.1:6379> hexists k2 name
(integer) 1

 hincrby:为哈希表 key 中的域 field 的值加上增量 increment 

127.0.0.1:6379> hincrby k1 id 2
(integer) 3

127.0.0.1:6379> hgetall k1
1) "id"
2) "3"
3) "age"
4) "18"

hincrbyfloat:为哈希表 key 中的域 field 加上浮点数增量 increment 

127.0.0.1:6379> hincrbyfloat k1 id 0.5
"3.5"

 hsetnx:将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在的时候才设置,否则不设置

127.0.0.1:6379> hsetnx k1 name hx
(integer) 1
127.0.0.1:6379> hsetnx k1 id 1
(integer) 0
127.0.0.1:6379> hgetall k1
1) "id"
2) "3.5"
3) "age"
4) "18"
5) "name"
6) "hx"

猜你喜欢

转载自blog.csdn.net/weixin_39561473/article/details/89279275