# INCRBYFLOAT

将key的浮点值递增给定的量

语法

INCRBYFLOAT key increment
  • 可用版本:

    2.6.0

  • 时间复杂度:

    O(1)

  • ACL 类别:

    @write, @string, @fast

key递增表示存储在指定处的浮点数的字符串increment。通过使用负值increment,结果是存储在键中的值减少(通过加法的明显属性)。如果该键不存在,则0在执行操作之前将其设置为。如果出现以下情况之一,则会返回错误:

  • 键包含错误类型的值(不是字符串)。
  • 当前键内容或指定增量不可解析为双精度浮点数。

如果命令成功,新的递增值将作为键的新值存储(替换旧值),并以字符串的形式返回给调用者。

字符串键中已经包含的值和增量参数都可以选择以指数表示法提供,但是增量后计算的值始终以相同的格式存储,即,一个整数后跟(如果需要)一个点,以及表示数字的小数部分的可变位数。始终删除尾随零。

无论计算的实际内部精度如何,输出的精度都固定在小数点后 17 位。

# 返回

批量字符串:key增量后的值。

# 例子

redis> SET mykey 10.50
"OK"
redis> INCRBYFLOAT mykey 0.1
"10.6"
redis> INCRBYFLOAT mykey -5
"5.6"
redis> SET mykey 5.0e3
"OK"
redis> INCRBYFLOAT mykey 2.0e2
"5200"
redis> 

# 执行细节

该命令始终作为 SET 操作在复制链接和 Append Only File 中传播,因此底层浮点数学实现中的差异不会成为不一致的根源。

# 反馈

如果您在此页面上发现问题,或有改进建议,请提交请求以合并或打开存储库中的问题。

Last Updated: 4/18/2023, 8:45:33 AM