*Redis JSON.NUMMULTBY 命令

JSON.NUMMULTBY 在 RedisJSON 中对指定路径的数字值执行原子性乘法。


*语法

JSON.NUMMULTBY key path number

*参数说明

参数 类型 必填 说明
key String JSON 文档键名
path String JSONPath 路径
number Integer/Float 乘数

*返回值

  • String:乘法后的新值
  • Error:路径不存在或不是数字

*时间复杂度

O(1)

*

*示例

*基本用法

> JSON.SET doc $ '{"value": 10}'
OK
> JSON.NUMMULTBY doc $.value 2
"20"
> JSON.NUMMULTBY doc $.value 0.5
"10"

*常见错误

错误 原因 解决
ERR path does not exist 路径不存在 确认路径正确
ERR path not a number 目标不是数字 确认路径指向数字

*最佳实践

  • 用于需要乘法计算的场景
  • 支持浮点数乘法
  • 原子性操作

*FAQ

Q1: 和 JSON.NUMINCRBY 有什么区别? A: NUMMULTBY 是乘法;NUMINCRBY 是加法。

Q2: 支持除以零吗? A: 不支持,会导致错误或返回 Infinity。

Q3: 路径不存在会怎样? A: 会返回错误。