使用

hash的话意思是,redis的一个key对应一个hash,然后hash里面再存储了很多种数据

 

 

hget : 得到对应hash的某个字段的值

hset:设置hash里面某个字段的值

hmset : 批量设置hash里面的字段值

hmget: 批量得到hash里面的字段值

hgetall:  得到hash里面所有的键与值

hlen:计算hash的长度

hexists :判断hash里面某个字段地的值是否存在

 

 

hkeys : 得到hash里面所有的key

hvals :得到hash里面所有的key对应的值(可重复,key不可重复)

hincrby : 增加hash里面某个字段的值

hincrbyfloat:增加hash里面某个字段的值浮点数

一个hash里面可以存储2^32-1个键值对,hash里面的值只能是字符串

 

hash实现🛒

 

用户购物车商品数量hash

key 为 uid   , field为 商品ID      val为数量

商品信息公共hash

key 为 商品类别,field 商品ID     val为商品信息的json

 

 

 hsetnx :往hash里面存数据:如果hash里面存在这个键,就不存

 

string 和 hash存取的区别

1.string 的话,就是一个key对应一个json,方便读取,可以直接读然后访问,但是是整体读写

2.hash 的话,就是把属性分开了,然后方便修改,能够单独修改一个属性,不用整体取出来

 

原理