首页 > 编程知识 正文

Redis(七)—— Hash 哈希类型详解

时间:2023-05-06 09:28:51 阅读:178942 作者:464

散列散列类型

散列类型意味着Redis键/值对中的值本身是值/值对结构,如value=[{field1,value1}, {fieldN,valueN}]。

Redis hash是一种字符串字段(字段)和值(value )映射表,特别适合存储对象。

Redis的每个hash可以包含2^32 - 1键值对(超过40亿)。

常用命令

为哈希表中的字段赋值:hset

如果散列表不存在,则会创建新的散列表并进行HSET操作。

如果字段已经存在于散列表中,则旧值将被复盖。

获取哈希表中字段的值:hget

127.0.0.1:6379 hsetmyhashfield1hello1(integer ) )。 127.0.0.133606379 hgetmyhashfield1' hello1' 127.0.0.133606379 hsetmyhashfield1hello2(integer ) 0127.0.0

此命令覆盖散列表中已经存在的字段。

如果散列表不存在,则会创建空散列表并执行HMSET操作。

同时将多个 field-value (字段-值)对设置到哈希表中:mhset

127.0.0.133606379 hmsetmyhashfield1hello1field2hello 2ok 127.0.0.133606379 hmgetmyhashfield1field 11 (' hello1'2) )

127.0.0.1:6379 hgetallmyhash1(field1)2) hello1'3)3) field2)4) hello23358 www.Sina.com /

127.0.0.1:6379 hdelmyhashfield1#给定散列表myhash的字段(integer ) 1127.0.0.133606379 hgetallmyhash # 删除1 )的' hello2' 127.0.0.133606379 hmsetmyhashfield3hello3field4hello4field5hello 5ok 127.0.0.133606379 hgetallmyhalo hello4'7)、field5'8)、hello5' #==========删除指定哈希表myhash中的多个字段=====127.0

散列表中的字段数。 如果密钥不存在,则返回0

127.0.0.133606379 hmsetmyhashfield3hello3field4hello4field5hello 5ok 127.0.0.133606379 hlenmyhash (integer ) 3127.0

如果散列表中有指定的字段,则返回1。 如果散列表不包含特定字段或key不存在,则返回0

127.0.0.1:6379 hgetallmyhash1(field3)2) hello3'3)3) field4'4)4) hello4'5)5) field5'6)6)

同时获取多个哈希表中的字段的值:mhget

127.0.0.1:6379 hgetallmyhash1(field3)2) hello3'3)3) field4'4)4) hello4'5)5) field5'6)6) 获取' field5' 127.0.0.133606379 hvalsmyhash #散列表中所有字段的属性1 )、hello3'2)和hello4'3)

增量也可以是负数。 这相当于减去指定字段的操作。

如果散列表中的key不存在,则会创建新的散列表并执行HINCRBY命令。

如果指定的字段不存在,则在运行命令之前,字段值将初始化为0。

如果对包含字符串值的字段运行HINCRBY命令,则会发生错误。

本操作的值被限制为64位(bit )有符号数字显示。

127.0.0.133606379 hsetmyhashfield 110 (integer ) 1127.0.133606379 hincrbymyhashfield 15 (integer ) 15127.0.0

如果散列表不存在,则会创建新的散列表并进行HSET操作。

如果字段已经存在于散列表中,则操作无效。

如果key不存在,则会创建新的散列表并执行HSETNX命令。

设定成功了。 返回1。 如果特定字段已经存在且未执行操作,则返回0。

127.0.0.1:6379 hsetnxmyhashfield2hello2(Integer ) 1127.0.133606379 hsetnxmyhashfield2hi2) integer )0 Redis

127.0.0.1:6379 hset user :1 namewanliage3(integer ) 2127.0.0.133606379 hm getuser :1 name age1) wanli'2

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。