redis的hash类型

文章介绍了Redis的Hash类型如何作为比String类型更优的选择,特别是对于需要频繁修改对象字段的情况。Hash类型允许对单个字段进行CRUD操作,提供如HSET、HGET、HMGET等命令,便于管理和更新数据。示例展示了如何添加、获取和修改Hash中的field值,以及执行字段值的自增操作。
摘要由CSDN通过智能技术生成

String类型是将对象序列化为json字符串后存储到redis中,当需要修改对象某个字段时非常不方便,只能全部覆盖,比如下面的数据,要修改age字段,只能把整个json全部覆盖,这时使用hash类型就比较方便
| key | value |
| ------ | ------ |
| zss:user:1 | {“id”:1,“name”:“张三”,“age”:18} |
| zss:goods:1 | {“id”:1,“name”:“金属防风打火机”,“price”:9.9} |

介绍

Hash类型,也叫散列,value是一个无序字典,类似于java中的HashMap结构,Hash结构可以将对象中的每个实例变量独立存储,可以针对单个实例变量做crud操作,比string类型的json更加灵活

在这里插入图片描述

常用命令

  • HSET zss:user:3 name 王 五 age 18: 添加或者修改hash类型的key的1个或多个field的值
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4IOjxHxu-1681144042044)(null)]
  • HGET zss:user:3 age: 获取1个hash类型的key的1个field的值
  • HMGET zss:user:3 name age: 获取hash类型的key的多个field的值
192.168.2.16:28003> HMGET zss:user:3 name age                       
王 五                                                                 
18
  • HGETALL zss:user:3: 获取1个hash类型的key的所有field和value
192.168.2.20:24003> HGETALL zss:user:3                              
-> Redirected to slot [5437] located at 192.168.2.16:28003          
name                                                                
王 五                                                                 
age                                                                 
18
  • HKEYS zss:user:3获取1个hash类型的key中的所有field
192.168.2.16:28003> HKEYS zss:user:3                                
name                                                                
age
  • HVALS zss:user:3: 获取1个hash类型的key中的所有value
192.168.2.16:28003> HVALS zss:user:3                                
王 五                                                                 
18
  • HINCRBY zss:user:3 age 2: 让1个hash类型key的字段值自增并指定步长,这里设置的是步长为2,相当于一次+2
192.168.2.16:28003> HINCRBY zss:user:3 age 2                        
20                                                                  
192.168.2.16:28003> HINCRBY zss:user:3 age 2                        
22                                                                  
192.168.2.16:28003> HVALS zss:user:3                                
王 五                                                                 
22
  • HSETNX zss:user:3 sex 男: 添加1个hash类型的key的field值,字段不存在则添加,否则返回0
192.168.2.16:28003> HSETNX zss:user:3 sex 男                         
1                                                                   
192.168.2.16:28003> HSETNX zss:user:3 sex 男                         
0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值