gpt4 book ai didi

mysql - 如何调整自动增量?

转载 作者:行者123 更新时间:2023-11-29 15:50:32 24 4
gpt4 key购买 nike

祝大家有美好的一天。所以我在Excel中有很多数据需要插入到数据库中,但我没有注意到我插入了重复的值(因为hr没有将其整理出来)。

无论如何,这就是交易

[id][name]
[1][name1]
[2][name2] // I want to delete this row
[3][name3]
[4][name4]

我想删除第 2 行。我想让 id 自动调整,例如,

[id][name]
[1][name1]
[2][name3] // The id will adjust
[3][name4]

这个可以实现吗?或者如果没有,我可以做一些解决办法吗?

PS:我的数据已经是50k,我想删除7k中的行

最佳答案

一般来说,您应该避免手动干预自动增量列。这意味着,当您将数据插入表中时,您应该省略自动增量列,从而允许 MySQL 自动为其分配值。

也许这里最好的解决方案是拥有第三个时间戳列,用于记录插入每条记录的时间。然后,您可以使用ROW_NUMBER来生成您想要的序列,例如

SELECT
ROW_NUMBER() OVER (ORDER BY ts_column) id,
name
FROM yourTable
ORDER BY
id;

也许还可以使用id列订购ROW_NUMBER,并获得相同的结果。如果您使用的 MySQL 版本早于 8+,那么您可以使用用户变量模拟 ROW_NUMBER

关于mysql - 如何调整自动增量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56786307/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com