Redis常用数据类型(4)-----hash

目录

1 简单介绍

2 常用命令

3 数据结构


1 简单介绍

Redis hash是一个键值对集合

Redis hash 是一个string类型的field和value的映射表,hash特别适合存储对象,类似于Java里面的Map<String,Object>

如果我们想将一个对象存进redis中,有好几种方式:

第一种:

user:{id=1,name=zhangsan,age=20}

如果用这种方式进行存储,想要修改值时需要将整个对象全部拿出来,再取出相应的值进行修改,再转为json串,最后放进redis中,及其不方便。

第二种:

user:id 1

user:name zhangsan

user:age 20

如果采用这种方式进行存储,当一个对象中有许多字段时,会极大的占用空间

第三种:hash

id 1

user:name:zhangsan

age:20

采用这种方式进行存储,存储和值的修改都会很方便

2 常用命令:

hset <key> <field> <value>给key集合中的<field>键赋值<value>

hget <key1> <field> 从<key1> 集合<field>取出value

 hmset <key1> <field1> <value1><field2><value2> 批量设置hash的值

hexists<key1><field> 查看hash表中的key,给定域field是否存在

hkeys<key> 列出该hash集合中的所有field

hvals<key> 列出该hash集合中的所有value

hincrby<key><field><increment> 为hash表key中的域field的值加上增量

hsetnx<key><field><value>将hash表key中的field的值设置为value,当且仅当域field不存在(不存在时才会添加,存在就不添加) 中文名称乱码了

3 数据结构

        Hash类型对应的数据结构是两种,ziplist(压缩列表),hashtable(hash表)。当field-value长度较短且个数较少时,使用ziplist,否则使用hashtable          

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值