简介
Hash类型是String类型的field和value的映射表,或者说是一个String集合。hash特别适合用于存储对 象,相比较而言,将一个对象类型存储在Hash类型要存储在String类型里占用更少的内存空间,并对整个对象的存 取。可以看成具有KEY和VALUE的MAP容器,该类型非常适合于存储值对象的信息, 如:uname,upass,age等。该类型的数据仅占用很少的磁盘空间(相比于JSON)。 Redis 中每个 hash 可以存储 2的32次方 - 1 键值对(40多亿)
Hash命令
赋值语法:
- HSET KEY FIELD VALUE :为指定的KEY,设定FILD/VALUE
- HMSET KEY FIELD VALUE [FIELD1,VALUE1]…… :同时将多个 field-value (域-值)对设置到哈希表 key 中。
取值语法:
- HGET KEY FIELD :获取存储在HASH中的值,根据FIELD得到VALUE
- HMGET KEY field[field1] :获取key所有给定字段的值
- HGETALL KEY :返回HASH表中所有的字段和值
删除语法:
- HDEL KEY field1[field2] :删除一个或多个HASH
其它语法:
- HKEYS KEY :获取所有哈希表中的字段
- HLEN KEY :获取哈希表中字段的数量
- HSETNX key field value :只有在字段 field 不存在时,设置哈希表字段的值
- HINCRBY key field increment :为哈希表 key 中的指定字段的整数值加上增量 increment
- HINCRBYFLOAT key field increment :为哈希表 key 中的指定字段的浮点数值加上增量 increment 。
- HEXISTS key field :查看哈希表 key 中,指定的字段是否存在
应用场景
Hash的应用场景:(存储一个用户信息对象数据) 1、 常用于存储一个对象 / 分布式Session 2、 为什
么不用string存储一个对象?
网友评论