Redis常用命令之操作Hash类型

场景

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

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

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 中所有域的值。

举例


 

猜你喜欢

转载自www.cnblogs.com/badaoliumangqizhi/p/12465623.html