【Redis】Redis常用命令之Hash

本文详细介绍了Redis中哈希类型的各种命令,包括设置、获取、删除、判断、获取所有字段和值等操作,强调了它们的时间复杂度和使用场景。
摘要由CSDN通过智能技术生成

1.hset:设置hash中指定的字段(field)的值(value)。

HSET key field value [field value ...]

时间复杂度:插⼊⼀组field为O(1),插⼊N组field为O(N)。
返回值:添加的字段的个数。
2.hget:获取hash中指定字段的值

HGET key field

时间复杂度:O(1),返回值:字段对应的值或者nil。
在这里插入图片描述
3.hexists:判断hash中是否有指定的字段

HEXISTS key field

时间复杂度:O(1),返回值:1表示存在,0表示不存在。
4.hdel:删除hash中指定的字段。

HDEL key field [field ...]

时间复杂度:删除⼀个元素为O(1),删除N个元素为O(N)。
返回值:本次操作删除的字段个数。
在这里插入图片描述
5.hkeys:获取hash中的所有字段。

HKEYS key

时间复杂度:O(N),N为field的个数,返回值:字段列表。
6.hvals:获取hash中的所有的值。

HVALS key

时间复杂度:O(N),N为field的个数。返回值:所有的值。
7.hgetall:获取hash中的所有字段以及对应的值。

HGETALL key

时间复杂度:O(N),N为field的个数,返回值:字段和对应的值。
在这里插入图片描述
8.hmget:⼀次获取hash中多个字段的值。

HMGET key field [field ...]

时间复杂度:只查询⼀个元素为O(1),查询多个元素为O(N),N为查询元素个数。返回值:字段对应的值或者nil。
9.获取hash中的所有字段的个数。

HLEN key

时间复杂度:O(1),返回值:字段个数。
在这里插入图片描述
10.hsetnx:在字段不存在的情况下,设置hash中的字段和值。

HSETNX key field value

时间复杂度:O(1),返回值:1表示设置成功,0表示失败。
在这里插入图片描述
11.hincrby:将hash中字段对应的数值添加指定的值。

HINCRBY key field increment
HINCRBYFLOAT key field increment   //hincrby的浮点数版本

时间复杂度:O(1),返回值:该字段变化之后的值。
在这里插入图片描述
注意:在使⽤hgetall时,如果哈希元素个数⽐较多,会存在阻塞Redis的可能。如果只需要获取部分field,可以使⽤hmget,如果⼀定要获取全部field,可以尝试使⽤hscan命令,该命令采⽤渐进式遍历哈希类型。
总结:

命令解释时间复杂度
hset key field value设置field的值是valueO(1)
hget key field获取field的value值O(1)
hdel key field [field…]删除fieldO(n),n是field的个数
hlen key计算field的个数O(1)
hgetall key获取所有的field-valueO(n),n是field的个数
hmget field [field …]批量获取field的valueO(n),n是field的个数
hmset field value [field value …]批量设置field-valueO(n),n是field的个数
hexists key field判断 field 是否存在O(1)
hkeys key获取所有的 fieldO(n),n是field的个数
hvals key获取所有的 valueO(n),n是field的个数
hsetnx key field value设置值,但必须在 field 不存在时才能设置成功O(1)
hincrby key field n对应 field-value +nO(1)
hincrbyfloat key field n对应 field-value +nO(1)
hstrlen key field计算 value 的字符串⻓度O(1)
  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值