redis hash数据类型的使用 作者:马育民 • 2020-12-24 08:30 • 阅读:10097 # 介绍 相当于java的 `Map`、javascript中的 `JSON`、python中的 `dict` `key` 是 `string` 类型,`value` 是 `key-value` 对 适合 **存储对象**,将一个 **对象** 存储在 `hash`类型中会占用 **更少的内存**,并且可以更 **方便的存取** 整个对象 每个 hash 可以存储 $$2^{32} - 1$$ 键值对(40多亿)。 ### 应用场景 存储用户信息 [![](https://www.malaoshi.top/upload/pic/redis/QQ20201224100409.png)](https://www.malaoshi.top/upload/pic/redis/QQ20201224100409.png) ### 命令 http://redisdoc.com/hash/index.html https://www.runoob.com/redis/redis-hashes.html **HSET** HSETNX **HGET** HEXISTS **HDEL** HLEN HSTRLEN HINCRBY HINCRBYFLOAT **HMSET** **HMGET** HKEYS HVALS **HGETALL** HSCAN # 例子:用户信息 ### 一次存储一个key-value ``` >hset userinfo_123 name lilei ``` ### 一次读取一个key-value ``` >hget userinfo_123 name ``` ### 一次存储多个key-value ``` >hmset userinfo_123 age 20 phone 138 OK ``` ### 一次读取多个key-value ``` > hmget userinfo_123 name age phone 1) "lilei" 2) "20" 3) "138" ``` ### 获取所有的key-value ``` >hgetall userinfo_123 1) "name" # 第一个key 2) "lilei" # 第一个key对应的value 3) "age" # 第二个key 4) "20" # 第二个key对应的value 5) "phone" 6) "138" ``` 原文出处:http://malaoshi.top/show_1IXHHSZOwbB.html