mysql id从1开始自增 快速解决id不连续的问题
吾爱主题
阅读:208
2024-04-02 08:04:07
评论:0
mysql id从1开始自增 解决id不连续
作为一个强迫症患者,对于表格内某些行删除之后,id不连续这个问题完全无法容忍,一开始使用
?1 | TRUNCATE TABLE tablename |
来实现id从头自增,但是这个命令同时也会清空整个表,真的是坑爹啊。
后面才发现了正确的做法:
?1 | alter table tablename auto_increment = 1; |
这个命令不会改动现有的表的内容和顺序,同时新插入行的id会先使用已删除的id,完美填补空缺id。
mysql自增id跳跃解决(不删除数据)
问题描述:
从excel中导入大量数据到mysql,自增id没有按顺序自增,中间有很多跳过了,由于数量巨大,不想重新导入
解决思路:
按照id或者时间按从小到大排序==>获取行号==>用行号替换原来的id
sql语句:
?1 | update tab as t1 join ( select id,(@rowno:=@rowno+1) as rowno from tab a,( select (@rowno:=0)) b order by a.id) as t2 SET t1.id=t2.rowno WHERE t1.id=t2.id; |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/weixin_39358657/article/details/90107982
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。