数据类型Hash


(1)介绍


hash数据类型存储的数据与mysql数据库中存储的一条记录极为相似


【Redis缓存机制】8.Hash集合类型操作使用_hash



Redis本身就类似于Hash的存储结构,分为key-value键值对,实际上它的Hash数据就好像是在


Redis里面又有一个小型redis一样。



(2)操作


hset key field value             设置hash field为指定值,如果key不存在,则先创建
hget key field                   获取指定的hash field
hmget key field1...fieldN        获取多个指定的hash field
hmset key field1 value1...fieldN  valueN       同时设置hash的多个field
hincrby key field integer        将指定的hash field加上给定值
hexists key field                测试指定的field是否存在
hdel key field                   删除指定的hash field
hlen key                         返回指定hsah的field数量
hkeys key                        返回hash的所有field
hvals key                        返回hash的所有value
hgetall key                      返回hsah的所有field和value


(3)实践


我们最一开始创建了一个goods商品的hash,我们可以使用hkeys、hvals分别


查看hash的所有field和value,如果需要同时查看,就使用hgetall指令


【Redis缓存机制】8.Hash集合类型操作使用_hmget_02



我们给goods添加一个备注good_msg信息,可以使用hset指令


【Redis缓存机制】8.Hash集合类型操作使用_hash_03



我们使用hget可以获取指定hash的field的数据,我们获取刚刚插入的备注信息


【Redis缓存机制】8.Hash集合类型操作使用_hash_04



我们使用hdel删除我们添加的备注good_msg信息,使用hexists来测试信息是否还存在


【Redis缓存机制】8.Hash集合类型操作使用_redis_05



如果商品涨价了,我们就增加该商品的价格。增加某个field的数据值,使用hincrby指令


【Redis缓存机制】8.Hash集合类型操作使用_hexists_06



最后,使用hlen可以查看某个hash的field数量,我们看一下goods的数据量


【Redis缓存机制】8.Hash集合类型操作使用_hexists_07


​​​