Redis:字符串INCR、INCRBY、INCRBYFLOAT、DECR、DECRBY命令介绍

INCR

INCR key
可用版本: >= 1.0.0
时间复杂度: O(1)

为键key对应的数字字符串(整数)加上一。

演示

如果键key不存在, 那么它的值会先被初始化为 0 , 然后再执行INCR命令。
在这里插入图片描述
INCR命令会返回键key对应的数字字符串转换成数字后,再执行加一操作之后的值。
在这里插入图片描述

如果键key对应的字符串不能被解释成数字, 那么INCR命令将返回一个错误。
在这里插入图片描述
INCR命令是一个针对字符串的操作。 因为Redis并没有专用的整数类型, 所以键key对应的字符串在执行INCR命令时会被解释为十进制(64位有符号整数)。
在这里插入图片描述

INCRBY

INCRBY key increment
可用版本: >= 1.0.0
时间复杂度: O(1)

为键key对应的数字字符串(整数)加上 increment

演示

如果键key不存在, 那么键key的值会先被初始化为 0 , 然后再执行INCRBY命令。
在这里插入图片描述
INCRBY命令会返回加上 increment 之后, 键key当前的值。
在这里插入图片描述

如果键key对应的值不能被解释成数字, 那么INCRBY命令将返回一个错误。
在这里插入图片描述

INCRBYFLOAT

INCRBYFLOAT key increment
可用版本: >= 2.6.0
时间复杂度: O(1)

为键key对应的值(浮点数)加上浮点数 increment

演示

如果键key不存在, 那么INCRBYFLOAT会先将键key的值设为 0 , 然后再执行加法操作。此外, 无论加法计算所得的浮点数的实际精度有多长, INCRBYFLOAT命令的计算结果最多只保留小数点的后十七位(0.1用二进制表示不出来)。
在这里插入图片描述

INCRBYFLOAT命令会返回在加上增量 increment 之后, 键key对应的新值。无论是键key对应的值还是增量 increment , 都可以使用像5e-1这样的指数符号来表示。但是, 执行 INCRBYFLOAT命令之后的值总是以同样的形式储存(比如 0.51.5 ), 小数部分尾随的0会被移除, 如果可能的话, 命令还会将浮点数转换为整数(比如 1.0 会被保存成 1 ,下图的操作就是这样)。
在这里插入图片描述
key当前的值或者给定的增量increment不能被解释为双精度浮点数,INCRBYFLOAT命令会返回一个错误(INCRBYFLOAT命令执行的键key的值不是字符串类型,自然也会返回一个错误)。
在这里插入图片描述

DECR

DECR key
可用版本: >= 1.0.0
时间复杂度: O(1)

为键key对应的数字值(整数)减去一。

演示

如果键key不存在, 那么键key的值会先被初始化为 0 , 然后再执行DECR操作。
在这里插入图片描述
DECR命令会返回键key的值执行减一操作之后的新值。
在这里插入图片描述

如果键key对应的值不能被解释为数字, 那么DECR命令会返回一个错误。值限制在64位有符号数字表示之内,溢出也会返回一个错误。
在这里插入图片描述

DECRBY

DECRBY key decrement
可用版本: >= 1.0.0
时间复杂度: O(1)

将键key对应的数字值(整数)减去decrement

演示
如果键key不存在, 那么键key的值会先被初始化为 0 , 然后再执行DECRBY命令。
在这里插入图片描述
DECRBY命令会返回键key对应的值在执行减法操作之后的新值。
在这里插入图片描述
以下情况,DECRBY命令会返回一个错误。

  1. key对应的值不是字符串类型。
  2. key对应的值不能被解释为数字。
  3. 减量decrement不能被解释为数字。

Redis中字符串的INCR、INCRBY、INCRBYFLOAT、DECR、DECRBY命令就介绍到这里。

写博客是博主记录自己的学习过程,如果有错误,请指正,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ITKaven

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值