gpt4 book ai didi

MySql 使用唯一键约束递增单元格值

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

我有一个包含可以排序的项目的表格,看起来有点像这样:

CREATE TABLE `mytable` (
`uid` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(1024) NOT NULL,
`position` int(11) NOT NULL
PRIMARY KEY (`uid`),
UNIQUE KEY `Position_UNIQUE` (`position`)
)

如您所见,位置必须是唯一的。现在,每当我向表中插入一条新记录时,我希望它具有位置 #1,因此我需要将所有其他值增加 1。

如果我去

update mytable set position = position + 1

我可以就违反我的独特 key 限制进行投诉(错误代码:1062。 key “Position_UNIQUE”重复输入“2”)。

我该如何巧妙地做到这一点?

最佳答案

您需要添加一个“order by”子句:

update mytable set position = position + 1 order by position desc;

关于MySql 使用唯一键约束递增单元格值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30790016/

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