redis 数据类型新手练习系列——Hash类型

redis 数据类型

Redis 主要支持以下几种数据类型:

(1)string(字符串): 基本的数据存储单元,可以存储字符串、整数或者浮点数。

(2)hash(哈希):一个键值对集合,可以存储多个字段。

(3)list(列表):一个简单的列表,可以存储一系列的字符串元素。

(4)set(集合):一个无序集合,可以存储不重复的字符串元素。

(5)zset(sorted set:有序集合): 类似于集合,但是每个元素都有一个分数(score)与之关联。

(6)位图(Bitmaps):基于字符串类型,可以对每个位进行操作。

(7)超日志(HyperLogLogs):用于基数统计,可以估算集合中的唯一元素数量。

(8)地理空间(Geospatial):用于存储地理位置信息。

(9)发布/订阅(Pub/Sub):一种消息通信模式,允许客户端订阅消息通道,并接收发布到该通道的 消息。

(10)流(Streams):用于消息队列和日志存储,支持消息的持久化和时间排序。

(11)模块(Modules):Redis 支持动态加载模块,可以扩展 Redis 的功能。

使用:

key-string:最常用的,一般用于存储一个值。

key-hash:存储一个对象数据的。

key-list:使用list结构实现栈和队列结构。 分布式锁 红锁

key-set:交集,差集和并集的操作。

key-zset:排行榜,积分存储等操作。

Hash类型

Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。

Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。

详情 指令

(1)hset key field value
功能:为哈希表中的字段设置值。
(2)hget key field
功能:获取哈希表中指定字段的值。
(3)hmset key field1 value1 field2 value2 ...
功能:为哈希表设置多个字段和值。

在哈希表user:1中,设置多个字段和值。

(4)hmget key field1 field2 ...
功能:获取哈希表中多个字段的值。
(5)hgetall key
功能:获取哈希表中所有字段和值。
(6)hdel key field1 field2
功能:删除哈希表中一个或多个字段。
(7)hexists key field
功能:检查哈希表中是否存在指定字段。
(8)hkeys key
功能:获取哈希表中所有字段。
(9)hvals key
功能:获取哈希表中所有值。
(10)hlen key
功能:获取哈希表中字段的数量。
(11)hincrby key field increment
功能:将哈希表中指定字段的值增加指定数值(仅适用于整数)。
(12)hincrbyfloat key field increment
功能:将哈希表中指定字段的值增加指定数值(适用于浮点数)。
(13)hsetnx key field value
功能:仅当字段不存在时设置值。

如果字段不存在,则设置;否则不操作。

其他类型详情可查看本人同系列博客

相关推荐
邵奈一6 分钟前
【紧急处理ZCode事件】ZCode 工作区快照静默上传:检测方法与三层防护实践
人工智能·学习·大模型·国产
Wang's Blog10 分钟前
Java 项目实战: 外卖平台-后台系统登录功能开发
java·服务器·redis
小K讲AI营销15 分钟前
AI基础设施融资路径的中美比较:资本市场模式与政策金融模式
大数据·数据库·人工智能
那年窗外下的雪.20 分钟前
AIDC 学习日志|第 27 天|EVPN 多归属收敛时间线与 Leaf2 接管验证
网络协议·学习·http·tcpdump
净水深流22 分钟前
中国冷链冷库行业数据分析:从规模扩张到技术驱动
大数据·数据库·人工智能·冷库冷链
秦哈哈41 分钟前
【HelloAgents】学习笔记(四)
学习·ai·agent
李兆龙的博客1 小时前
从一到无穷大 #94:ClickHouse TimeSeries——时间线组织与 Prometheus 兼容性
数据库
冰暮流星1 小时前
事务的四个特性(ACID)详解
数据库
j7~1 小时前
【Linux】三十八.C++ 手写 HTTP 服务器:裸 socket + fork 多进程,从 HTTP 报文解析到浏览器打开网页
linux·网络·网络协议·学习·http·网络编程
日拱一卒的小田1 小时前
ZYNQ学习笔记4-ZYNQ的SD卡控制器2
笔记·学习