首页/数据/Redis 进阶速查/Hash 字段更新与计数:HINCRBY 家族
数据结构与选型42 条

Hash 字段更新与计数:HINCRBY 家族

HINCRBY 对 Hash 内整数字段原子递增,HINCRBYFLOAT 支持浮点;HSETNX 只在字段不存在时写入,适合初始化标记与幂等处理。

Redis 进阶速查数据更新于 2026-10-12
递增HINCRBY key field delta
浮点HINCRBYFLOAT key field delta
仅新建HSETNX key field value

示例

示例
redis-cli HINCRBY stats:page 20261012 1
redis-cli HINCRBY user:1001 points -50
redis-cli HINCRBYFLOAT metric:temp sensor1 0.5
redis-cli HSETNX task:9:lock owner worker1
字段按字符串存储但递增时按整数解析:字段不存在按 0 处理,值不是整数直接报错,不会静默转换。

易错点

  • 单个 Hash 在单线程上操作:字段数万级的大 Hash 上执行 HGETALL/HDEL 会长时间阻塞
  • 计数字段持续追加(如每用户每日一个字段)会让 Hash 不断膨胀,字段维度需要有上限

数据来源与参考

  • Redis 官方文档:HINCRBY / HINCRBYFLOAT / HSETNX 命令
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌