Redis的Hash类型数据常用命令解析

举报
灰小猿 发表于 2022/02/16 22:04:55 2022/02/16
【摘要】 hello。你好呀,我是灰小猿,一个超会写bug的程序猿!上一篇文章我们介绍了在Redis中的string类型数据常用命令的使用,今天,我接着和大家分享Redis五大数据类型中的第二个数据类型——Hash类型中常用的命令操作: Hash类型Hash类型是一个String类型的field(字段)和value(值)的映射表,它的作用是可以用来存储我们定义的数据对象,所以简单来说它是一个key下面...

hello。你好呀,我是灰小猿,一个超会写bug的程序猿!

上一篇文章我们介绍了在Redis中的string类型数据常用命令的使用,今天,我接着和大家分享Redis五大数据类型中的第二个数据类型——Hash类型中常用的命令操作:

Hash类型

Hash类型是一个String类型的field(字段)和value(值)的映射表,它的作用是可以用来存储我们定义的数据对象,所以简单来说它是一个key下面存储了多个key-value的情况,给大家简单的话一个Hash的结构图:

接下来我们来简单讲一下在Redis中对于Hash这种数据类型,常用的几个命令,

设置一个Hash数据

设置Hash数据所使用的命令不是SET,而是HMSET,你可以理解为H代表Hash的意思,M代表Map的意思,该命令的格式如下:

HMSET key fieId1 value1 [fieId2 value2…]

  • key为这个Hash数据对应的唯一性索引
  • field为下面存储的一个键值对的键
  • value为该键对应的值

如我们设置key为“myhash”,里面存储的field分别为name-huixiaoyuan、sex-nan、age-3的三个键值对

127.0.0.1:6379> HMSET myhash name huixiaoyuan sex nan age 3
OK

获取指定哈希表中所有的字段和值

查看指定哈希表中所有的字段和值的命令是HGETALL,作用是取出该hash中所有的数据,格式如下

HGETALL key

  • 其中key为对应着这个Hash数据的索引

如我们查看刚才设置的hash数据

127.0.0.1:6379> HGETALL myhash
1) "name"
2) "huixiaoyuan"
3) "sex"
4) "nan"
5) "age"
6) "3"

获取存储在哈希表中指定字段的值

上一个命令是获取所有的字段,那么现在这个命令是只获取指定哈希表中指定字段的值,命令的格式如下:

HGET key field

  • key哈希表的索引
  • field获取的值对应的字段

如我们获取上面的哈希表中字段为name对应的值

127.0.0.1:6379> HGET myhash name
"huixiaoyuan"

删除一个或多个哈希表字段

删除一个或多个哈希表字段的命令是HDEL,该命令可以删除指定哈希表中指定的字段,以及其对应的值,格式如下:

HDEL key field1 [field2…]

  • key为指定的哈希表的索引
  • field为要删除的值对应的字段,如果要删除多个就以空格分开

如我们要删除索引为“myhash”的哈希表中值为“3”,对应字段为“age”的字段和值为“nan”,对应字段为“sex”的两个字段。

127.0.0.1:6379> HGET myhash name
"huixiaoyuan"
127.0.0.1:6379> HDEL myhash age sex
(integer) 2
127.0.0.1:6379> HGETALL myhash
1) "name"
2) "huixiaoyuan"

获取哈希表中字段的数量

该命令可以获取指定哈希表中字段的数量,格式如下:

HLEN key

  • key为指定的哈希表的索引
127.0.0.1:6379> HLEN myhash
(integer) 1

获取哈希表中的所有字段

该命令可以获取指定哈希表中所有的字段,但是不返回字段对应的值,格式如下:

HKEYS key

  • key为 指定的哈希表的索引
127.0.0.1:6379> HKEYS myhash
1) "name"

获取哈希表中所有的值

上一个命令是获取到指定哈希表中所有的字段,但是不返回字段对应的值,那么这个命令就是获取到所有的值,而不返回其对应的字段,格式如下:

HVALS key

  • key为 指定的哈希表的索引
127.0.0.1:6379> HVALS myhash
1) "huixiaoyuan"

以上就是Redis中hash类型数据中最常用的几个命令的使用方法,

我是灰小猿,我们下期见!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。