- 用法
-
HINCRBYFLOAT key field increment
- 复杂度
- O(1)
- 起始版本
- 2.6.0
- ACL 类别
- @hash, @write, @fast
- 键包含错误类型的值(不是哈希表)。
- 当前字段内容或指定的增量不能解析为双精度浮点数。
将存储在 key
中的哈希表里,表示浮点数的指定 field
的值增加 increment
。如果 increment
值为负数,则哈希字段值将 减少 而不是增加。如果该字段不存在,则在执行操作之前将其设置为 0
。如果发生以下任一情况,则会返回错误:
此命令的确切行为与 INCRBYFLOAT
命令相同,有关详细信息,请参阅 INCRBYFLOAT
的文档。
示例
127.0.0.1:6379> HSET mykey field 10.50
(integer) 1
127.0.0.1:6379> HINCRBYFLOAT mykey field 0.1
"10.6"
127.0.0.1:6379> HINCRBYFLOAT mykey field -5
"5.6"
127.0.0.1:6379> HSET mykey field 5.0e3
(integer) 0
127.0.0.1:6379> HINCRBYFLOAT mykey field 2.0e2
"5200"
实现细节
此命令始终以 HSET
操作的形式传播到复制链接和仅追加文件(Append Only File)中,这样底层浮点数学实现中的差异就不会导致不一致。
RESP2/RESP3 回复
批量字符串回复:增量操作后字段的值。