当前位置:首页 >> 核电技术聚变聚能设备 >> 【Redis】hash数据类型-常用命令,罗技m505

【Redis】hash数据类型-常用命令,罗技m505

cpugpu芯片开发光刻机 核电技术聚变聚能设备 1
文件名:【Redis】hash数据类型-常用命令,罗技m505 【Redis】hash数据类型-常用命令

文章目录 前置知识常用命令HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGET关于HMSETHLENHSETNXHINCRBYHINCRBYFLOAT 命令小结

前置知识

redis自身就是键值对结构了,哈希类型是指值本⾝⼜是⼀个键值对结构,形如key="key",value={{field1,value1},...,{fieldN,valueN}}

字符串和哈希类型对⽐

哈希类型中的映射关系通常称为field-value,⽤于区分Redis整体的键值对(key-value),注意这⾥的value是指field对应的值,不是键(key)对应的值,注意value在不同上下⽂的作⽤


常用命令 HSET

设置hash中指定的字段(field)的值(value)

语法:HSET key field value [field value ...]

时间复杂度:插⼊⼀组field为O(1),插⼊N组field为O(N) 返回值:添加成功的字段(filed-value)的个数

HGET

获取hash中指定字段的值

语法:HGET key field

返回值:字段对应的值或者nil


HEXISTS

判断hash中是否有指定的字段

语法:HEXISTS key field

返回值:1表⽰存在,0表⽰不存在


HDEL

删除hash中指定的字段

语法:HDEL key field [field ...]

时间复杂度:删除⼀个元素为O(1).删除N个元素为O(N) 返回值:本次操作删除的字段个数

注意:del删除的是key,hdel删除的是key当中的field字段


HKEYS

获取hash中的所有字段

语法:HKEYS key

时间复杂度:O(N),N为field的个数(先根据key找到对应的hash,然后再遍历hash => 有一定的风险,因为不知道某个hash当中是否会存在大量的field) 返回值:字段列表


HVALS

获取hash中的所有的值

语法:HVALS key

时间复杂度:O(N),N为field的个数 返回值:所有的值


HGETALL

获取hash中的所有字段以及对应的值

语法:HGETALL key

时间复杂度:O(N),N为field的个数 返回值:字段和对应的值


HMGET

⼀次获取hash中多个字段的值

语法: HMGET key field [field ...]

时间复杂度:只查询⼀个元素为O(1),查询多个元素为O(N),N为查询元素个数 返回值:字段对应的值或者nil


注意:在使⽤HGETALL时,如果哈希元素个数⽐较多,会存在阻塞Redis的可能。如果开发⼈员只需要获取部分field,可以使⽤HMGET,如果⼀定要获取全部field,可以尝试使⽤HSCAN命令,该命令采⽤渐进式遍历哈希类型 =>敲一次命令遍历一小部分,返回下一次从哪个位置开始遍历,连续执行多次就可以完成整个遍历过程,此时时间就是可控的,不会阻塞redis服务器

此时返回的多个value的顺序和field的顺序是匹配的


关于HMSET

其实有HMSET进行一次设置多个field和value,但是并不需要,因为hset已经支持一次设置多个field和value了


HLEN

获取hash中的所有字段的个数

语法:LEN key

时间复杂度:O(1) 返回值:字段个数


HSETNX

在字段(field)不存在的情况下,设置hash中的字段和值,如果存在,则失败

语法:HSETNX key field value

返回值:1表⽰设置成功,0表⽰失败 时间复杂度:O(1)


HINCRBY

将hash中字段对应的数值添加指定的值

语法:HINCRBY key field increment #increment只能是整数(正数 负数 0),但是不能是浮点数

返回值:该字段变化之后的值 时间复杂度:O(1)

HINCRBYFLOAT 语法:HINCRBYFLOAT key field increment本质是HINCRBY的浮点数版本

返回值:该字段变化之后的值 时间复杂度:O(1)


命令小结

协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接