Redis 少数を使用してインクリメントする

Redis 少数を使用してインクリメントする

Redisで、少数を使用してインクリメントする手順を記述してます。

環境

  • OS Ubuntu 21.10 (Impish Indri)
  • Redis 6.2.6

手順

少数を使用してインクリメントするには、「incrbyfloat」を使用します。

incrbyfloat key名 値

実際に、少数を指定して、インクリメントを実行してみます。

127.0.0.1:6379> set key1 1
OK

127.0.0.1:6379> incrbyfloat key1 1.1
"2.1"

127.0.0.1:6379> incrbyfloat key1 1.1
"3.2"

127.0.0.1:6379> get key1
"3.2"

指定された値でインクリメントされていることが確認できます。

マイナスを指定

マイナスにすると、マイナスされます。

127.0.0.1:6379> set key1 1
OK

127.0.0.1:6379> incrbyfloat key1 -1.1
"-0.1"

127.0.0.1:6379> incrbyfloat key1 -1.1
"-1.2"

127.0.0.1:6379> get key1
"-1.2"

整数を指定

整数を指定しても、使用できます。

127.0.0.1:6379> set key1 1
OK

127.0.0.1:6379> incrbyfloat key1 1
"2"

127.0.0.1:6379> incrbyfloat key1 1
"3"

127.0.0.1:6379> get key1
"3"

数値でない場合

数値でない場合は、エラーとなります。

127.0.0.1:6379> set key1 "aaa"
OK

127.0.0.1:6379> incrbyfloat key1 1
(error) ERR value is not a valid float