iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >INSERT INTO SELECT时自增Id不连续
  • 527
分享到

INSERT INTO SELECT时自增Id不连续

mysqlsql数据库 2023-10-12 16:10:06 527人浏览 安东尼
摘要

一、表结构   二、MySQL提供了批量申请自增id的策略 语句执行过程中,第一次申请自增id,会分配1个(2的0次方)1个用完以后,这个语句第二次申请自增id,会分配2个(2的1次方)2个用完以后,还是这个语句,第三次申请自增id,

一、表结构

 

二、MySQL提供了批量申请自增id的策略

  1. 语句执行过程中,第一次申请自增id,会分配1个(2的0次方)
  2. 1个用完以后,这个语句第二次申请自增id,会分配2个(2的1次方)
  3. 2个用完以后,还是这个语句,第三次申请自增id,会分配4个(2的2次方)

 

三、举例

例子一:

INSERT INTO user (name, age) SELECT name, age from user01 limit 4;

第一次申请自增id会分配1个,1 < 4

第二次申请自增id会分配2个,1+2 < 4

第三次申请自增id会分配4个,1+2+4 > 4,终止

此时1 + 2 + 4 = 7 > 4,申请自增id的操作就会停止。
因为已经申请了7个id了,所以当我们执行第二条sql语句时,插入数据的id就会从8开始,此时AUTO_INCREMENT的值也会是8

例子二:

INSERT INTO user (name, age) SELECT name, age from user01 limit 8;

第一次申请自增id会分配1个,1 < 8

第二次申请自增id会分配2个,1+2 < 8

第三次申请自增id会分配4个,1+2+4 < 8

第四次申请自增id会分配4个,1+2+4+8 > 8

此时1 + 2 + 4 +8= 15 > 8,申请自增id的操作就会停止。
因为已经申请了15个id了,所以当我们执行第二条SQL语句时,插入数据的id就会从16开始,此时AUTO_INCREMENT的值也会是16

 

来源地址:https://blog.csdn.net/weixin_41712931/article/details/129419974

您可能感兴趣的文档:

--结束END--

本文标题: INSERT INTO SELECT时自增Id不连续

本文链接: https://www.lsjlt.com/news/429623.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • INSERT INTO SELECT时自增Id不连续
    一、表结构   二、MySQL提供了批量申请自增id的策略 语句执行过程中,第一次申请自增id,会分配1个(2的0次方)1个用完以后,这个语句第二次申请自增id,会分配2个(2的1次方)2个用完以后,还是这个语句,第三次申请自增id,...
    99+
    2023-10-12
    mysql sql 数据库
  • mysql自增id不连续怎么解决
    这篇文章主要介绍“mysql自增id不连续怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql自增id不连续怎么解决”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
  • Mysql:使用on duplicate key update时导致自增id不连续怎么办?
    在执行完on duplicate key update 的语句后,会发现数据库AUTO_INCREMENT会一直增长,就算没有新增数据,只是修改数据AUTO_INCREMENT也会一直增长,导致自增id不连续。 解决方法 方法一:每次执行...
    99+
    2023-09-29
    mysql sql duplicate key 自增id不连续 AUTO_INCREMENT
  • mysql id从1开始自增 快速解决id不连续的问题
    mysql id从1开始自增 解决id不连续 作为一个强迫症患者,对于表格内某些行删除之后,id不连续这个问题完全无法容忍,一开始使用 TRUNCATE TABLE tablen...
    99+
    2024-04-02
  • mysql何时选择自增id?何时不选?
    在MySQL中,数据表的主键一般采用id字段自增的形式。使用自增ID给我们带来不少便捷,但也有不少坏处。自增ID是在设计表时如果将id字段的值设置为自增的形式也就是AUTO_INCREMENT,那么当...
    99+
    2023-09-08
    mysql 数据库 java
  • MySQL自增主键为什么不连续
    MySQL自增主键为什么不连续,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在我们日常使用Mysql中,如果...
    99+
    2024-04-02
  • 为什么mysql自增主键不是连续的
    目录一 前言二 自增值存储说明三 自增值修改机制四 自增值修改时机五 导致自增值不连续的原因5.1 唯一键冲突5.2 事务回滚5.3 批量写库操作六 参考文档 一...
    99+
    2024-04-02
  • 为什么MySQL自增主键不单调也不连续
    这篇文章主要讲解了“为什么MySQL自增主键不单调也不连续”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么MySQL自增主键不单调也不连续”吧!当我们在...
    99+
    2024-04-02
  • MySQL数据库删除数据后自增主键不连续的问题
    在日常使用MySQL时,我们手动删除几条记录后,会发现后续的数据主键自增出现不连续的情况 我们可以执行如下代码解决 如果删除完数据还没有新增数据,即还没有出现不连贯的数据ID时,执行以下语句: ALTER TABLE 表名 AUTO_INC...
    99+
    2023-09-05
    数据库 mysql sql
  • MyBatis处理mysql主键自动增长出现的不连续问题解决
    问题产生 设置了mysql主键自动增长,但因为删除字段的操作导致主键不连续 解决方法 step1:在mapper.xml文件中添加update标签设置自动增长的增量为1 alte...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作