【mysql】id主键列乱了之后,重新排序(可根据日期顺序)

一、ID中断不连续的,重新设置为连续的ID

复制代码
alter table table_name drop id;
alter table table_name add id int not null first;
alter table table_name modify column id int not null auto_increment, add primary key(id);
select * from table_name order by id;

二、根据日期顺序,重新排列ID

复制代码
alter table table_name drop id;
alter table table_name add id int not null first;

SET @row_number = 0;
UPDATE table_name
SET id = (@row_number := @row_number + 1)
ORDER BY ref_date;

alter table table_name modify column id int not null auto_increment, add primary key(id);
select * from table_name order by id;

参考文章:

mysql根据时间对数据重新更改序号_mob649e81593bda的技术博客_51CTO博客

mysql--id主键列乱了之后,重新排序_mysql 主键排序异常-CSDN博客

相关推荐
Mike117.4 小时前
GBase 8a 日期边界写法和时间窗口取数偏差
数据库
SPC的存折5 小时前
1、Redis数据库基础
linux·运维·服务器·数据库·redis·缓存
MatrixOrigin9 小时前
数据库没有死,只是范式变了
数据库·oracle
羊小蜜.10 小时前
Mysql 13: 触发器全解——创建、查看、使用与注意事项
数据库·mysql·触发器
阿里加多10 小时前
第 1 章:Go 并发编程概述
java·开发语言·数据库·spring·golang
ShiJiuD66688899910 小时前
Mysql 进阶
数据库·mysql
一 乐10 小时前
物流信息管理|基于springboot + vue物流信息管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·物流信息管理系统
l1o3v1e4ding11 小时前
排查linux CentOS7.6的mysql磁盘 I/O 延迟过高问题
linux·运维·mysql