专业编程基础技术教程

网站首页 > 基础教程 正文

更简单、更全面、更详细的学习redis哈希

ccvgpt 2024-08-14 15:37:58 基础教程 8 ℃

上节课我们学习了Redis的常用数据类型-字符串,我们知道redis支持字符串(strings)、哈希值(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)、bitmaps、hyperloglogs等,这节课我们详细地来学习一下Redis数据类型-哈希(hashes)本章节对应的视频教程已发布到“权威PHP”公众号,想观看视频教程的同学可以到“权威PHP”公众号观看。

哈希(hash)在redis中也是以key/value的形式进行存储数据,hash中的value也是一个key/value的集合体,意思就是hash中的value值也是由多个key、value键值对组合成的。相信大家经常会看到一句话“哈希(hash)特别适合用于存储对象”,就是因为hash的value是由多个key、value键值对组合成,适于存储对象的属性和属性值。以下是给大家整理出来的哈希常用操作命令列表:

更简单、更全面、更详细的学习redis哈希

hset:设置指定key(键)对应的哈希集合中指定字段值

hmset:同时设置指定key对应的哈希集合中多个指定字段值

hsetnx:设置指定key对应的哈希集合中不存在的字段值

hget:获取指定key对应哈希集合中某字段的值

hmget:同时获取指定key对应哈希集合中多个字段的值

hgetall:获取指定key对应哈希集合中全部字段及字段值

hincrby:增加指定key 对应哈希集合中指定字段的数值

hkeys:获取指定key对应哈希集合中所有字段名

hvals:获取指定key对应哈希集合中所有字段对应值

hexists:判断指定key对应哈希集合中是否存在指定的字段

hlen:获取指定key对应哈希集合中字段数量

hstrlen:获取指定key对应哈希集合中字段value的字符串长度

hdel:删除指定key对应哈希集合中指定的字段内容

全文关键词说明:

1、本文中说的键均指哈希key ,哈希值存储样例标注:

key : {field1:value1,field2:value2}

2、本文中说的哈希集合均指哈希key对应的value,样例中标注:

key :{field1:value1,field2:value2}

3、本文中说的字段均指哈希集合中的key ,样例中标注:

key : {field1:value1,field2:value2}

4、本文中说的字段值均指哈希集合中的value,样例中标注:

key : {field1:value1,field2:value2}


1、hset : 设置指定key(键)对应的哈希集中指定字段值

命令格式:hset key field value

命令参数:

hset 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

value 存储在哈希集合中的字段值

hset 操作的哈希键不存在时会默认新增,然后保存哈希的键和值!设置指定键对应的哈希集合中的字段不存在则新增返回1,如果字段在哈希集合中已存在会覆盖原来字段值。返回0.

2、hmset : 同时设置指定key对应的哈希集合中多个指定字段值

命令格式:hmset key field1 value1 field2 value2 .....

命令参数:

hmset 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

value 存储在哈希集合中的字段值

hmset 操作的哈希键不存在时会默认新增,然后保存哈希的键和值!设置指定键对应的哈希集合中的字段不存在则新增,如果字段在哈希集合中已存在会覆盖原来字段值。注意设置的字段和字段值必须成对出现!

3、hsetnx : 设置指定key对应的哈希集合中不存在的字段值

命令格式:hsetnx key field value

命令参数:

hsetnx 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

value 存储在哈希集合中的字段值

hsetnx 操作的哈希键不存在时会默认新增,然后保存哈希的键和值!设置指定键对应的哈希集合中的字段不存在则新增,如果字段在哈希集合中已存在则放弃操作。


4、hget : 获取指定key对应哈希集合中某字段的值

命令格式:hget key field

命令参数:

hget 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

5、hmget : 同时获取指定key对应哈希集合中多个字段的值

命令格式:hmget key field1 field2 ......

命令参数:

hmget 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

6、hgetall : 获取指定key对应哈希集合中全部字段及字段值

命令格式:hgetall key

命令参数:

hgetall 命令

key 字符串在redis中存储的(哈希)键

7、hincrby : 增加指定key 对应哈希集合中指定字段的数值

命令格式:hincrby key field incrment

命令参数:

hincrby 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

incrment 给存储在哈希集合中数字字段值增加的数

hash操作中提供了hincrby命令,没有像字符串提供那么多对数字操作的命令(hincr、hdecr、hdecrby这些都不存在)。使用hincrby可以增加指定数字也可以减去指定数字,减去使用负数即可。注意hincrby命令不用于字段值为非数字的字符串。

8、hkeys : 获取指定key对应哈希集合中所有字段名

命令格式:hkeys key

命令参数:

hkeys 命令

key 字符串在redis中存储的(哈希)键

9、hvals : 获取指定key对应哈希集合中所有字段对应值

命令格式:hvals key

命令参数:

hvals 命令

key 字符串在redis中存储的(哈希)键

10、hexists : 判断指定key对应哈希集合中是否存在指定的字段

命令格式:hexists key field

命令参数:

hexists 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

注意:hexists操作不存在的哈希key时仍然为空,显示字段不存在。

11、hlen : 获取指定key对应哈希集合中字段数量

命令格式:hlen key

命令参数:

hlen 命令

key 字符串在redis中存储的(哈希)键

12、hstrlen : 获取指定key对应哈希集合中字段value的字符串长度

命令格式:hstrlen key field

命令参数:

hstrlen 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名

13、hdel : 删除指定key对应哈希集合中指定的字段内容

命令格式:hdel key field

命令参数:

hdel 命令

key 字符串在redis中存储的(哈希)键

field 存储在哈希集合中的字段名


写到这里hash的常用操作命令就给介绍完了,命令虽然简单想要牢固掌握还需要你动动手自己练习练习哦!想观看本章节对应的视频教程,请到“权威PHP”公众号上观看吧!


推荐阅读文章:

Redis数据类型-字符串详解

轻松搞定Redis的安装


本公众号推送的所有文章都是个人整理不存在抄袭,主要参考资料都来源各技术官方文档及个人学习笔记。交流微信号:QIU15510135007,识别下方二维码关注公众号持续获取更多学习内容!


Tags:

最近发表
标签列表