当前位置: 移动技术网 > IT编程>数据库>MongoDB > Redis常用命令之操作Hash类型

Redis常用命令之操作Hash类型

2020年03月12日  | 移动技术网IT编程  | 我要评论

曾山简历,穿越之无敌俏公主,富田事变

场景

centos中redis的下载编译与安装(超详细):

https://blog.csdn.net/badao_liumang_qizhi/article/details/103967334

redis的启动和关闭(前台启动和后台启动):

https://blog.csdn.net/badao_liumang_qizhi/article/details/103972348

redisdesktopmanager客户端可视化工具下载安装与使用:

https://blog.csdn.net/badao_liumang_qizhi/article/details/103983147

redis常用命令之操作string类型:

https://blog.csdn.net/badao_liumang_qizhi/article/details/103991107

注:

博客:

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

hash类型是string类型的field和value的映射表,或者说是一个string集合。

它特别适合存储对象,相比较而言,将一个对象类型存储在hash类型比要存储在string类型里占用更少的内存空间,

并方便整个对象的存取。

后台模式启动redis服务端,并建立客户端连接。

hset/hget命令

语法

hset key field value

将哈希表 key 中的域 field 的值设为 value 。

如果 key 不存在,一个新的哈希表被创建并进行 hset 操作。

如果域 field 已经存在于哈希表中,旧值将被覆盖。

hget key field

返回哈希表 key 中给定域 field 的值。

举例

使用hset给person 设置id为1 name 为badao

 

 

此时可以打开可视化客户端查看

 

 

然后使用hget获取

 

 

hmset/hmget命令

语法

hmset key field value [field value ...]

同时将多个 field-value (域-值)对设置到哈希表 key 中。

此命令会覆盖哈希表中已存在的域。

如果 key 不存在,一个空哈希表被创建并执行 hmset 操作。

 

hmget key field [field ...]

返回哈希表 key 中,一个或多个给定域的值。

如果给定的域不存在于哈希表,那么返回一个 nil 值。

因为不存在的 key 被当作一个空哈希表来处理,所以对一个不存在的 key 进行 hmget 操作将返回一个只带有 nil 值的表。

 

举例

 

 

可以使用可视化客户端查看此时

 

 

如果要对hmset设置时间

 

 

hincrby命令

语法

hincrby key field increment

为哈希表 key 中的域 field 的值加上增量 increment 。

增量也可以为负数,相当于对给定域进行减法操作。

如果 key 不存在,一个新的哈希表被创建并执行 hincrby 命令。

如果域 field 不存在,那么在执行命令前,域的值被初始化为 0 。

对一个储存字符串值的域 field 执行 hincrby 命令将造成一个错误。

本操作的值被限制在 64 位(bit)有符号数字表示之内。

示例

 

 

hexists命令

语法

hexists key field

查看哈希表 key 中,给定域 field 是否存在。

可用版本:
>= 2.0.0
时间复杂度:
o(1)
返回值:
如果哈希表含有给定域,返回 1 。
如果哈希表不含有给定域,或 key 不存在,返回 0 。

举例

 

 

hdel命令

语法

hdel key field [field ...]

删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。

举例

 

 

hlen命令/hkeys命令/hvals命令

语法

hlen key

返回哈希表 key 中域的数量。

 

hkeys key

返回哈希表 key 中的所有域。

 

hvals key

返回哈希表 key 中所有域的值。

举例

 

 


 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网