redis哈希表系列之一

21 篇文章 0 订阅

目录

 

hset

hsetnx

hget

hexists

hdel

hlen

hstrlen


hset

1.语法
hset hash field value

2.解析
将哈希表hash中域field的值设置为value
如果给定的哈希表不存在,那么一个新的哈希表将被创建并执行hset操作
如果域field已经存在于哈希表中,那么它的旧值将被新值value覆盖
3.返回值:
当hset命令在哈希表中新创建field域并成功为它设置值时,命令将返回1
如果域field存在于哈希表中,并且hset命令成功使用新值覆盖了旧值,那么命令将返回0
4.例子:
设置一个新域:

hset student name sunny
hget student name

对一个已经存在的域进行更新:

hset student name jack
hget student name 

hsetnx

1.语法
hsetnx hash field value

2.解析
当且仅当域field尚未存在于哈希表的情况下,将它的值设置为value
如果给定域已经存在于哈希表当中,那么命令将放弃执行设置操作
如果哈希表hash不存在,那么一个新的哈希表将被创建并执行hsetnx操作
3.返回值:
hset命令在设置成功时返回1,在给定域已经存在而放弃执行设置操作时返回0
4.例子:
域尚未存在,设置成功

hsetnx student name sunny
hget student name 

域已经存在,设置未成功,域原有的值未被改变:

hsetnx student name jack
hget student name

hget

1.语法
hget hash field

2.解析
返回哈希表中给定域的值
3.返回值:
hget 命令在默认情况下返回给定域的值
如果给定域不存在与哈希表中,又或者给定的哈希表并不存在,那么命令返回nil
4.例子:
域存在的情况下:

hset student name sunny
hget student name

域不存在的情况:

hget student age

hexists

1.语法
hexists hash field

2.解析
检查给定域field是否存在于哈希表hash当中
3.返回值:
hexists命令在给定域存在时返回1,否则返回0
4.例子:
给定域不存在

hexists student age

给定域存在:

hset student name
hexists student name

hdel

1.语法
hdel key field [field...]

2.解析
删除哈希表key中的一个或多个指定域,不存在的域将被忽略
3.备注:
在2.4以下的版本里,hdel每次只能删除单个域,如果需要在一个原子时间内删除多个域
请将命令包含在multi/exec块内
4.返回值:

被成功移除域的数量,不包含被忽略的域
hset student name sunny sex 1 age 23 like math
hdel student name //删除单个域
hdel student view //删除不存在的域
hdel student sex age //删除多个域
hgetall student 

hlen

1.语法
hlen key

2.解析
返回哈希表key中域的数量
3.返回值:
哈希表中域的数量
当key不存在时,返回0

hset student name sunny
hset student sex 1
hlen student

hstrlen

1.语法
hstrlen key field

2.解析
返回哈希表key中,与给定域field相关联的值的字符串长度
如果给定的键或者域不存在,那么命令返回0
3.返回值:
一个整数

hset student name sunny sex 1 age 23
hstrlen student name
hstrlen student sex

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值