欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Redis常用命令之操作Hash类型

程序员文章站 2022-06-17 22:01:16
场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Redis的启动和关闭(前台启动和后台启动): https://blog.csdn.net/BADAO_ ......

场景

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

 

 Redis常用命令之操作Hash类型

Redis常用命令之操作Hash类型

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

Redis常用命令之操作Hash类型

 

 

然后使用hget获取

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

hmset/hmget命令

语法

hmset key field value [field value ...]

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

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

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

 

hmget key field [field ...]

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

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

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

 

举例

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

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

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

如果要对hmset设置时间

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

hincrby命令

语法

hincrby key field increment

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

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

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

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

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

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

示例

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

hexists命令

语法

hexists key field

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

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

举例

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

hdel命令

语法

hdel key field [field ...]

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

举例

Redis常用命令之操作Hash类型

 

 

Redis常用命令之操作Hash类型

hlen命令/hkeys命令/hvals命令

语法

hlen key

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

 

hkeys key

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

 

hvals key

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

举例

Redis常用命令之操作Hash类型

Redis常用命令之操作Hash类型