redis_04_hashset

1. redis hashset数据类型简介

  • hash类型可以看做String key ,String value的map容器。非常适合存储值对象的信息。
  • 每一个hash可以存储4294967295个键值对

2. 设置hashsethset key field value

  • hset key field value O(0)
  • 设置key的属性为field,值为value的键值对,如果可以不存在,则命令就会创建新的key以参数中的1filed/value对;如果参数中的field在key中已经存在,则新的value会覆盖原来的value
  • 返回值为1表示原来的key中没有field,设置了新值;
  • 返回值为0表示原来的key中存在field,用新的value会覆盖原来的value
    在这里插入图片描述
  • hsetnx key field value:如果该key中不存在,会回去设置,并返回1;如果存在,就不会覆盖,不会去设置 返回值为0;与hset key filed value
    -在这里插入图片描述
  • hsget key field:可以根据field来获取相应的value的值
  • hincrby key field num:让可以的field的vale的值增加num

3. 查看根据field当前的可以是否存在fieldhexists key field

  • 返回1存在,返回0不存在
    在这里插入图片描述

4. 根据field来删除某些字段hdel key field

在这里插入图片描述

5. 获取所有的key,valuehkeys key hvals key

  • 获取所有的key是指key/value键值对;也就是之前插入的field
  • hset key field value是的key是值hash的一个标识
  • hgetall key:获取所有的key,value
    在这里插入图片描述
    在这里插入图片描述

6. 多键值一次性设置hmset key field value [field value]

命令原型	时间复杂度	命令描述	返回值
HSET key field value	O(1)	为指定的Key设定Field/Value对,如果Key不存在,该命令将创建新Key以参数中的Field/Value对,如果参数中的Field在该Key中已经存在,则用新值覆盖其原有值。 	1表示新的Field被设置了新值,0表示Field已经存在,用新值覆盖原有值。 
HGET key field 	O(1) 	返回指定Key中指定Field的关联值。	返回参数中Field的关联值,如果参数中的Key或Field不存,返回nil。
HEXISTS key field 	O(1) 	判断指定Key中的指定Field是否存在。	1表示存在,0表示参数中的Field或Key不存在。
HLEN key 	O(1)	获取该Key所包含的Field的数量。	返回Key包含的Field数量,如果Key不存在,返回0。
HDEL key field [field ...] 	O(N)	时间复杂度中的N表示参数中待删除的字段数量。从指定Key的Hashes Value中删除参数中指定的多个字段,如果不存在的字段将被忽略。如果Key不存在,则将其视为空Hashes,并返回0.	实际删除的Field数量。
HSETNX key field value	O(1)	只有当参数中的Key或Field不存在的情况下,为指定的Key设定Field/Value对,否则该命令不会进行任何操作。 	1表示新的Field被设置了新值,0表示Key或Field已经存在,该命令没有进行任何操作。
HINCRBY key field increment 	O(1)	增加指定Key中指定Field关联的Value的值。如果Key或Field不存在,该命令将会创建一个新Key或新Field,并将其关联的Value初始化为0,之后再指定数字增加的操作。该命令支持的数字是64位有符号整型,即increment可以负数。 	返回运算后的值。
HGETALL key	O(N) 	时间复杂度中的N表示Key包含的Field数量。获取该键包含的所有Field/Value。其返回格式为一个Field、一个Value,并以此类推。	Field/Value的列表。
HKEYS key 	O(N)	时间复杂度中的N表示Key包含的Field数量。返回指定Key的所有Fields名。	Field的列表。
HVALS key 	O(N)	时间复杂度中的N表示Key包含的Field数量。返回指定Key的所有Values名。 	Value的列表。 
HMGET key field [field ...] 	O(N) 	时间复杂度中的N表示请求的Field数量。获取和参数中指定Fields关联的一组Values。如果请求的Field不存在,其值返回nil。如果Key不存在,该命令将其视为空Hash,因此返回一组nil。	返回和请求Fields关联的一组Values,其返回顺序等同于Fields的请求顺序。
HMSET key field value [field value ...]	O(N)	时间复杂度中的N表示被设置的Field数量。逐对依次设置参数中给出的Field/Value对。如果其中某个Field已经存在,则用新值覆盖原有值。如果Key不存在,则创建新Key,同时设定参数中的Field/Value。  	 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值