redis系列(08):Hash类型操作
  oQNKXeHVeoXq 2023年12月12日 17 0


Redis中的Hash类型可以看成具有String Key和String Value的map容器。所以该类型非常适合于存储值对象的信息。如Username、Password和Age等。

如果Hash中包含很少的字段,那么该类型的数据也将仅占用很少的磁盘空间。

应用场景:缓存对象、购物车数据等

 

hset/hget/hlen/hexists/hdel/hsetnx

hset

给键为test的键设置字段为name,值为jack

redis系列(08):Hash类型操作_字段名

hget

获取键为test,字段为name的值

redis系列(08):Hash类型操作_字段_02

test键中不存在age字段,因此返回nil

redis系列(08):Hash类型操作_hg_03

hlen

获取test键的字段数量

redis系列(08):Hash类型操作_hg_04

hexists

判断test键中是否存在字段名为city的字段,由于存在,返回值为1

redis系列(08):Hash类型操作_hg_05

hdel

删除test键中字段名为age的字段,删除成功返回1

redis系列(08):Hash类型操作_字段_06

再次删除test键中字段名为age的字段,由于上一条命令已经将其删除,因为没有删除,返回0

redis系列(08):Hash类型操作_hg_07

hsetnx

通过hsetnx命令给test添加新字段age,其值为18,因为该字段已经被删除,所以该命令添加成功并返回1

redis系列(08):Hash类型操作_hg_08

由于test的age字段已经通过上一条命令添加成功,因为本条命令不做任何操作后返回0

redis系列(08):Hash类型操作_字段_09

 

hincrby、hmset、hgetall、hkeys、hkeys

hincrby

给test的age字段的值加1,返回加后的结果

redis系列(08):Hash类型操作_字段名_10

给test的age字段的值加-­1、-20,返回加后的结果

redis系列(08):Hash类型操作_hg_11

hmset

为该键test,一次性设置多个字段,分别是:name=jack,age=18

redis系列(08):Hash类型操作_hg_12

hmget

获取test键的多个字段,其中city并不存在,因为在返回结果中与该字段对应的值为nil

redis系列(08):Hash类型操作_hg_13

hgetall

返回test键的所有字段及其值,从结果中可以看出,他们是逐对列出的

redis系列(08):Hash类型操作_字段_14

hkeys

仅获取test键中所有字段的名字

redis系列(08):Hash类型操作_hg_15

hvals

仅获取test键中所有字段的值

redis系列(08):Hash类型操作_hg_16

 

__EOF__


本文作者:持之以恒(韧)
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月12日 0

暂无评论

oQNKXeHVeoXq
最新推荐 更多

2024-05-17