目录
- Redis之Hash命令
- 1.hmset
- 2.hmget
- 3.hexists
- 4.hincrby
- 5.hlen
- 6.hvals
- 7.hincrbyfloat
- 8.hkeys
- 9.hsetnx
Redis之Hash命令
1.hmset
命令用于同时将多个 field-value (字段-值)对设置到哈希表中;
此命令会覆盖哈希表中已存在的字段;
如果哈希表不存在,会创建一个空哈希表,并执行 HMSET 操作;
如果命令执行成功,返回 修改的键的个数
HMSET KEY_NAME FIELD1 VALUE1 ...FIELDN VALUEN![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SHQVTSV8-1656246315968)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220626200433847.png)] redis 查看hash数据结构 redis 获取hash命令_哈希算法](https://s2.51cto.com/images/blog/202305/26173032_64707c38691aa35154.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
2.hmget
命令用于返回哈希表中,一个或多个给定字段的值;
如果指定的字段不存在于哈希表,那么返回一个 nil 值;
如果指定的key不存在,那么返回多个 nil 值;
一个包含多个给定字段关联值的表,表值的排列顺序和指定字段的请求顺序一样
HMGET KEY_NAME FIELD1...FIELDN![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xpA3sxmW-1656246315970)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220626200549761.png)] redis 查看hash数据结构 redis 获取hash命令_初始化_02](https://s2.51cto.com/images/blog/202305/26173032_64707c388566a33275.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)

3.hexists
命令用于查看哈希表的指定字段是否存在;
如果哈希表含有给定字段,返回 1 ;
如果哈希表不含有给定字段,或 key 不存在,返回 0 。
HEXISTS KEY_NAME FIELD_NAME
4.hincrby
命令用于为哈希表中的字段值加上指定增量值;
增量也可以为负数,相当于对指定字段进行减法操作;
如果哈希表的 key 不存在,一个新的哈希表被创建并执行 HINCRBY 命令;
如果指定的字段不存在,那么在执行命令前,字段的值被初始化为 0 ;
对一个储存字符串值的字段执行 HINCRBY 命令将造成一个错误;
本操作的值被限制在 64 位(bit)有符号数字表示之内。
命令返回哈希表中字段的新值
HINCRBY KEY_NAME FIELD_NAME INCR_BY_NUMBER
5.hlen
命令用于获取哈希表中字段的数量;
当 key 不存在时,返回 0
HLEN KEY_NAME![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zTQxDf9F-1656246315971)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220626201346449.png)] redis 查看hash数据结构 redis 获取hash命令_哈希算法_06](https://s2.51cto.com/images/blog/202305/26173032_64707c387a34286823.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
6.hvals
命令返回哈希表所有字段的值,返回一个包含哈希表中所有值的表;
当 key 不存在时,返回一个空表
HVALS KEY_NAME FIELD VALUE

7.hincrbyfloat
命令用于为哈希表中的字段值加上指定浮点数增量值或减量值;
如果指定的字段不存在或者key不存在,那么在执行命令前,字段的值被初始化为 0;
返回执行 Hincrbyfloat 命令之后,哈希表中字段的新值
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9gad99IW-1656246315972)(C:/Users/86158/AppData/Roaming/Typora/typora-user-images/image-20220626202318007.png)] redis 查看hash数据结构 redis 获取hash命令_字段_09](https://s2.51cto.com/images/blog/202305/26173032_64707c38aef7938206.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)


8.hkeys
命令用于获取哈希表中的所有字段名;
包含哈希表中所有字段的列表;
当 key 不存在时,返回一个空列表
HKEYS KEY_NAME FIELD_NAME INCR_BY_NUMBER

9.hsetnx
命令用于为哈希表中不存在的的字段赋值 ;
如果key不存在,一个新的哈希表被创建并进行 HSET 操作;
如果字段已经存在于哈希表中,操作无效;
设置成功,返回 1 ;

















