Redis 从入门到精通(五):哈希操作详解

系列导读:本篇将深入讲解 Redis 哈希(Hash)的所有操作命令及实际应用场景。


文章目录


一、哈希命令总览

命令 说明
HSET/HGET 设置/获取字段
HMSET/HMGET 批量设置/获取
HGETALL 获取所有字段
HDEL 删除字段
HEXISTS 检查字段存在
HINCRBY 字段递增
HKEYS/HVALS 获取所有键/值

二、基础操作命令

2.1 设置与获取

bash 复制代码
# 设置单个字段
HSET user:1001 name "张三"

# 设置多个字段
HMSET user:1001 name "张三" age 25 city "北京"

# 获取单个字段
HGET user:1001 name

# 获取多个字段
HMGET user:1001 name age

# 获取所有字段
HGETALL user:1001

2.2 删除与检查

bash 复制代码
# 删除字段
HDEL user:1001 city

# 检查字段存在
HEXISTS user:1001 name  # 1存在 0不存在

# 仅当不存在时设置
HSETNX user:1001 email "test@example.com"

三、高级操作命令

3.1 数值操作

bash 复制代码
# 整数递增
HINCRBY user:1001 age 1

# 浮点递增
HINCRBYFLOAT user:1001 score 0.5

3.2 获取信息

bash 复制代码
# 获取所有字段名
HKEYS user:1001

# 获取所有字段值
HVALS user:1001

# 获取字段数量
HLEN user:1001

3.3 迭代遍历

bash 复制代码
# 渐进式遍历
HSCAN user:1001 0 MATCH field:* COUNT 10

四、实战应用场景

4.1 存储对象

bash 复制代码
# 用户信息
HMSET user:1001 name "张三" age 25 email "zhang@example.com"

# 商品信息
HMSET product:2001 name "iPhone" price 6999 stock 100

4.2 购物车

bash 复制代码
# 添加商品
HSET cart:user:1001 product:2001 2
HSET cart:user:1001 product:2002 1

# 增加数量
HINCRBY cart:user:1001 product:2001 1

# 获取购物车
HGETALL cart:user:1001

# 删除商品
HDEL cart:user:1001 product:2002

4.3 计数器

bash 复制代码
# 文章统计
HMSET article:100 views 100 likes 10 comments 5
HINCRBY article:100 views 1

总结

本文我们学习了:

✅ 基础操作 :HSET/HGET/HMSET/HGETALL

✅ 高级操作 :HINCRBY/HSCAN

✅ 应用场景:对象存储、购物车、计数器

下篇预告 :Redis 从入门到精通(六):列表操作详解


作者 :刘~浪地球
系列 :Redis 从入门到精通(五)
更新时间:2026-04-04

相关推荐
余槐i7 小时前
PostgreSQL 函数索引报错 must be immutable:3种绕法与代价
数据库·后端·sql·postgresql·性能优化
数据库小学妹7 小时前
PostgreSQL表膨胀怎么办?autovacuum清不动的根因与排查命令
数据库·postgresql·表膨胀·mvcc·数据库运维
mister_guo7 小时前
MySQL-1267错误:排序规则冲突的原因与解决方案
数据库·mysql
骇客野人7 小时前
在麒麟操作系统上 分别安装 jdk1.8, 达梦数据库,redis ,memcache 的操作实施方案和步骤
数据库·redis·memcached
美狐美颜SDK开放平台9 小时前
直播APP如何实现美白滤镜功能?视频美颜SDK技术开发方案详解
前端·数据库·人工智能·音视频·美颜sdk·直播美颜sdk·视频美颜sdk
花间相见10 小时前
【计算基础|MySQL01】【上手】安装连接、数据类型与建库建表
数据库·后端
花间相见11 小时前
【计算基础|MySQL02】【上手】SQL 增删改查
数据库·后端
ITxiaobing202311 小时前
IP 库与 AppsFlyer 国家/地区数据不一致,如何系统地对账?
数据库·网络协议·tcp/ip
.Bryce.11 小时前
在智能体中使用A2A工具:让大模型自己决定“该找谁帮忙“
android·java·服务器·redis·后端·agent·a2a
这个DBA有点耶11 小时前
从时间到语义:时序数据库与向量数据库的核心机制、选型与多模融合趋势
数据库·mysql·架构