gpt4 book ai didi

mysql - 根据之前的值自动递增

转载 作者:行者123 更新时间:2023-11-29 09:44:10 28 4
gpt4 key购买 nike

当我从 mysql 表中删除一条记录并在该位置插入新记录时,它将自动增量列值设置为我最后插入的下一条记录,这不是预期的

我在很多网站上搜索了它,但没有得到我想要的确切结果我还尝试设置last_inserted_id()+1,如下所示:

Alter table t1 auto_increment = last_insert_id() + 1;

但是显示错误

我想将该值设置为前一条记录的自动增量值旁边,

请帮忙,谢谢。

最佳答案

为什么你想这样做?自动增量列的约定并未规定 id 始终跟随下一个连续值。它只是说它将永远是唯一的,并且总体上会增加。

如果您想生成一个序列,请使用类似ROW_NUMBER(在 MySQL 8+ 版本中)的内容:

SELECT ROW_NUMBER() OVER (ORDER BY auto_increment) AS rn
FROM yourTable;

或者,在早期版本的 MySQL 中,使用用户变量:

SET @row_number = 0;

SELECT
(@row_number:=@row_number + 1) AS rn
FROM yourTable
ORDER BY auto_increment;

关于mysql - 根据之前的值自动递增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56015851/

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