gpt4 book ai didi

mysql 使用前一行的信息更新行

转载 作者:行者123 更新时间:2023-11-29 23:55:23 26 4
gpt4 key购买 nike

经过一段时间的搜索,我找到的答案都没有真正有帮助。我有一个包含值的表,现在我想像这样更新表:

set Rowx, Col3 to Rowx-1, Col2

我一直在尝试用 SQL Fiddle 做类似的事情,但我就是想不通。我也在某处读到这是完全不可能的,因为它不被MYSQL支持,我觉得这很难相信。

这是我的 SQL Fiddle 链接: http://sqlfiddle.com/#!2/565c37/1/0

编辑:代码实际上是正确的,只是交换了+和-,这让我失明了。

最终查询:

UPDATE 
tableX AS upd
JOIN
tableX AS simple
ON simple.Col1 = upd.Col1 -1
SET
upd.Col2 = simple.Col3 ;

最佳答案

您只需要使用- 1而不是+ 1:

UPDATE tableX upd JOIN
tableX simple
ON simple.Col1 = upd.Col1 - 1
SET upd.Col3 = simple.Col2 ;

如果你想要有连续的 id,你应该使用数字来表示它们,而不是字符串。由于类型转换,我认为 join 无法使用索引。

关于mysql 使用前一行的信息更新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25403935/

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