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

20 篇文章 2 订阅
订阅专栏

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命令就介绍到这里。

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

Redis字符串类型的常用命令小结
09-10
Redis字符串类型常用命令小结 Redis是一款开源的内存中数据结构存储系统,通常被用作数据库、缓存和消息中间件。在Redis中,字符串类型是最基本的数据类型,可以用作键值对数据库中简单的值存储,也可以作为其他...
java redis incrby使用_redis incrincrBy的使用说明
weixin_28932365的博客
02-13 2395
最近用incrincrBy在接口里做了下埋点统计每天请求总数,这两个命令还是挺好用的,先说下这俩命令吧注:redis后台服务是串行的单线程执行,不存在并发,即多线程调用Incr/incrby方法,在redis服务器上仍然是串行的单线程执行,不存在并发,所以这俩命令都是原子自增、线程安全的。1、Incr 命令 (菜鸟教程)Redis Incr 命令将 key 中储存的数字值增一。如果 key 不存...
redis incr incrby decr decrby命令
weixin_33946605的博客
12-18 872
incrincrbydecrdecrby命令的作用和用法 redisincrincrbydecrdecrby属于string数据结构,它们是原子性递增或递减操作。 incr递增1并返回递增后的结果; incrby根据指定值做递增或递减操作并返回递增或递减后的结果(incrby递增或递减取决于传入值的正负); decr递减1并返回递减后的结果; decrby根据指定值做递...
高并发下 redisincr会串行
最新发布
weixin_28763005的博客
08-08 54
深入理解高并发下的 Redis INCR 操作 在微服务架构及大数据量处理的现代应用中,Redis 作为一种高性能的 NoSQL 数据库,因其快速的读写能力而受到广泛青睐。尤其是在高并发情况下,Redis 提供的原子操作,如 INCR,可以有效地处理并发更新。但是,很多开发者并未深入理解这些操作的实现机制,导致在高并发场景...
Redis学习之incrby
爱喝水的qdy的博客
12-15 2286
目录incrby命令语法返回值例子 incrby命令 Redis incrby命令将 key 中储存的数字加上指定的增量值 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 incrby 命令 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误 语法 incrby key increment 返回值 加上指定的增量值之后, key 的值 ...
redisincrbyincr、hincrby的使用
hyj
02-29 9406
一、incrby 1、说明 Redis Incrby 命令将 key 中储存的数字加上指定的增量值。 2、语法 INCRBY KEY_NAME INCR_AMOUNT 二、incr 1、说明 Redis Incr 命令将 key 中储存的数字值增一。 2、语法 INCR KEY_NAME 三、hincrby 1、说明 Redis Hincrby 命令用于为哈希表中的...
Redis INCR key
weixin_33800463的博客
10-27 929
2019独角兽企业重金招聘Python工程师标准>>> ...
redisincr 高并发 原子性计数器
热门推荐
红星小学扛把子!
07-10 2万+
前言:6月底 公司录单的人比较多,由于先前的系统用的同步锁 ,我们是多服务实例,导致出现重复单号的问题,我想到的解决办法有两种 ,第一种是 Redis锁 第二种是自增key,下面实现的是用第二种方法 自增key 1.Redis自增key 的好处 原子性(atomicity):一个事务是一个不可分割的最小工作单位,事务中包括的诸操作要么都做,要么都不做。 Redis所有单个命令的执行都是原子性的,这与它的单线程机制有关; Redis命令的原子性使得我们不用考虑并发问题,可以方便的利用原子性自增操作 简单.
Redis 字符串(String)
12-16
Redis字符串的另一个重要特性是它可以作为计数器使用,通过INCRINCRBYDECRDECRBY命令进行原子性的递增或递减操作,这在分布式环境中非常有用,例如统计网站访问量或者实现限流策略。 需要注意的是,Redis的...
redis字符串类型_动力节点Java学院整理
09-09
1. `INCR`, `INCRBY`, `DECR`, `DECRBY`: 这些命令提供了原子性的整数递增和递减操作。例如,`INCR key`会将`key`对应的值增加1,非常适合用于生成唯一订单号或者作为计数器。这种方式避免了在多线程环境下使用锁来...
Redis的5种数据类型与常用命令讲解
12-16
string 字符串(可以为整形、浮点型和字符串,统称为元素) list 列表(实现队列,元素不唯一,先入先出原则) set 集合(各不相同的元素) hash hash散列值(hash的key必须是唯一的) sort set 有序集合 2....
Redis总结笔记(一):安装和常用命令
09-10
- 对String操作的命令,如`setnx(key, value)`、`setex(key, time, value)`、`mget`、`incr`、`incrby`、`decr`、`decrby`、`append`和`substr`。 - 对List操作的命令,如`rpush(key, value)`、`lpush(key, value)...
Redis命令INCRBYINCR区别
大宝的博客
05-07 3060
官方描述: INCRBY INCRBY key increment 为键 key 储存的数字值加上增量 increment 。 如果键 key 不存在, 那么键 key 的值会先被初始化为 0 , 然后再执行 INCRBY 命令。 如果键 key 储存的值不能被解释为数字, 那么 INCRBY 命令将返回一个错误。 INCR INCR key 为键 key 储存的数字值加上一。 如果键 key 不存在, 那么它的值会先被初始化为 0 , 然后再执行 INCR 命令。 如果键 key 储存的值不能被解释
【并发】详解redisincrdecr命令
路漫漫其修远兮 吾将上下而求索
03-22 7010
redis是一个单线程的服务,那么所有的命令肯定会排队被redis执行,redis提供的命令都是原子性的,百度搜索incr\decr就是说将对应的key+1,key-1的值重新set到redis中,而且很多都是认为incr\decr原子性的,那么现在就有一个问题,如果redis的key:a, value:100,那么100个线程并发执行decr操作,那么对应的key的value是不是应该为0?按照百度的说法,应该是。
Redis字符串数据类型之INCR命令,通常用于统计网站访问量,文章访问量,实现分布式锁
都随它大小便吧
12-18 3053
RedisINCR命令用于将键的值增加1。如果键不存在,则会先将键的值设置为0,然后再执行INCR操作。INCR命令的作用是对计数器进行自增操作,可以用于实现多种场景,比如统计网站访问量、文章访问量、分布式锁等。
Redis系列之多线程下使用incr/decr命令
Nicky's blog
12-04 2167
Redis是一个单线程的服务,所以正常来说redis命令是会排队执行的。incr/decr命令redis提供的可以实现递增递减的命令。但是如果使用不当也会有线程安全问题。动手实践一下吧,用一个例子来模拟实现高并发场景的秒杀减库存业务。
redis中的incrincrBy
U2133048的博客
11-15 6200
今天遇到这样几个例子,(1)闸机上传一条交易数据时,接收流水号(不是主键)就在原来基础上自增,并且每天更换。(2)每次上传出站交易数据,闸机都要累计交易金额。 这两个例子都可以用incrBy,或是例(1)用incr。下面来看看incrincrby的源代码和解释说明: incrby:其中key就是redis中的键,将key所存储的值加上增量interger。如果key不存在,那么key...
Redis学习之incrbyfloat命令
爱喝水的qdy的博客
12-15 852
目录incrbyfloat命令语法返回值例子 incrbyfloat命令 Redis incrbyfloat命令为 key 中所储存的值加上指定的浮点数增量值 原值以及increment,可以为整型或者浮点型,并且可以为负数 如果 key 不存在,那么 incrbyfloat 会先将 key 的值设为 0 ,再执行加法操作 语法 incrbyfloat key increment ...
redis incr 原子操作(结合增加1并返回增加之后的值:add+1&get)
HSJ0170的博客
10-23 1万+
INCR key 可用版本: >= 1.0.0 时间复杂度: O(1) 为键 key 储存的数字值加上一。 如果键 key 不存在, 那么它的值会先被初始化为 0 , 然后再执行 INCR 命令。 如果键 key 储存的值不能被解释为数字, 那么 INCR 命令将返回一个错误。 本操作的值限制在 64 位(bit)有符号数字表示之内。 Note INCR 命令是一个针对字符串的操作。 因为 ...
写文章

热门文章

  • MyBatis-Plus 之分页查询 169661
  • 同步和异步的区别 89985
  • 怎么保存退出 vim 编辑 70774
  • MySQL的driverClassName、url 50432
  • Spring 中 ClassPathXmlApplicationContext 类的简单使用 40348

分类专栏

  • JAVA 30篇
  • Spring 9篇
  • Spring Boot 31篇
  • Spring Security 12篇
  • Spring Cloud 12篇
  • Spring Cloud Alibaba 12篇
  • ZooKeeper 25篇
  • ElasticJob 14篇
  • Kafka 12篇
  • RabbitMQ 23篇
  • Nginx 8篇
  • Kubernetes 4篇
  • VirtualBox 3篇
  • Canal 2篇
  • Netty 1篇
  • ElasticSearch 1篇
  • Shell 1篇
  • 分布式 2篇
  • 文件服务 2篇
  • 后端框架 45篇
  • 前端框架 28篇
  • 容器技术 29篇
  • 缓存中间件 20篇
  • 持久层中间件 23篇
  • 任务调度中间件 1篇
  • 持续集成工具 1篇
  • 设计模式 29篇
  • 并发编程 29篇
  • 网络编程 14篇
  • 数据库 12篇
  • 集合框架 4篇
  • 源码阅读 11篇
  • 开发基础 10篇
  • 编译器 8篇
  • 服务器 11篇
  • 插件 1篇
  • Maven 4篇
  • Linux 10篇
  • Git 1篇
  • ACM 202篇
  • HDU 50篇
  • 牛客网 36篇
  • 51NOD 23篇
  • POJ 17篇
  • 洛谷 16篇
  • BFS 3篇
  • DFS 12篇
  • 贪心 14篇
  • 最短路 7篇
  • Tarjan 1篇
  • 最小生成树 5篇
  • 树链剖分 2篇
  • 树的重心 2篇
  • 点分治 1篇
  • 树的直径 2篇
  • 拓扑排序 1篇
  • 素数筛 4篇
  • 欧拉函数 4篇
  • 质因数分解 2篇
  • 快速幂 5篇
  • 矩阵快速幂 2篇
  • 逆元 4篇
  • 容斥 4篇
  • LCA 3篇
  • 积性函数线性筛 3篇
  • 简单DP 16篇
  • 数位DP 4篇
  • 树状DP 1篇
  • 状压DP 2篇
  • 树状数组 10篇
  • 后缀数组 2篇
  • 主席树 3篇
  • 线段树 10篇
  • 字典树 5篇
  • 并查集 1篇
  • RMQ 1篇
  • 莫队算法 9篇
  • 整体二分 2篇
  • 逆序数 1篇
  • 分治 1篇
  • CDQ分治 1篇
  • 倍增 2篇
  • 分块 5篇
  • 总结 3篇

最新评论

  • Docker容器中使用PING命令报错:bash: ping: command not found

    烟辰飏: 太感谢啦,问题解决了,很有效表情包

  • 反射破坏单例模式以及如何防御

    赵小凡同学: 博主把懒汉和饿汉式 搞反了

  • ElasticJob‐Lite:作业监听器

    一只烤鸭朝北走啊: 好久没看了,有点忘记了,我那会儿做的是定时任务在分布式环境中只单节点执行,我就简单地做了一个单分片,来避免定时任务重复执行,失效转移也用来保证不会单点故障。你再琢磨琢磨哈。

  • ElasticJob‐Lite:作业监听器

    AKKO111: 那感觉没必要用这个Distribute的listener了,直接用ElasticJobServiceLoader就行了吧

  • Nginx:Nginx添加SSL实现HTTPS访问

    风度翩翩609: 我这边配完 http+域名可以, 但是https+域名就不行了

大家在看

  • C++ | Leetcode C++题解之第429题N叉树的层序遍历 128
  • Java | Leetcode Java题解之第429题N叉树的层序遍历 58
  • PHP isset() 和 empty() 区别
  • 【已解决 含pytorch 代码调试分析】pytorch 数据类型基础,与Python数据类型的区别,为什么要另外设置新的pytorch 数据类型? 570
  • C++ | Leetcode C++题解之第430题扁平化多级双向链表

最新文章

  • MySQL: 备份 & 导入备份
  • RabbitMQ:Docker Compose部署RabbitMQ集群
  • VirtualBox:系统安装重启后又要重新安装
2022年80篇
2021年55篇
2020年206篇
2019年10篇
2018年220篇
2017年31篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ITKaven

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

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

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

打赏作者

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

抵扣说明:

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

余额充值

玻璃钢生产厂家营口玻璃钢雕塑定做农业迎丰收玻璃钢雕塑安徽十八罗汉玻璃钢雕塑加工玻璃钢雕塑什么材质好玻璃钢雕塑的使用寿命商场店庆美陈高级感玻璃钢狮子雕塑厂家石家庄玻璃钢雕塑订制阿拉善盟玻璃钢雕塑商丘不锈钢玻璃钢彩绘雕塑南昌玻璃钢热气球雕塑宁安玻璃钢价值观雕塑商场入口标志性美陈玻璃钢雕塑南宁玻璃钢花盆雕塑采购无锡夏季商场美陈家具商场美陈图片大全南京玻璃钢卡通雕塑报价山西玻璃钢人物雕塑价格玻璃钢龙雕塑专家玻璃钢卡通雕塑哪里买赤壁玻璃钢花盆花器铜陵玻璃钢雕塑批发重庆个性化玻璃钢雕塑市场景区玻璃钢雕塑哪家便宜呈贡玻璃钢广场雕塑设计多少钱红褐色玻璃钢花盆兰州人物玻璃钢雕塑多少钱玻璃钢雕塑系列商场美陈地皮点香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化