mysql - mysql:更新增量序列号与前一行相同的数字
问题描述
我有一张像这样的表:
表:水果
------------
num | fruit
------------
1 | apple
1 | banana
2 | orange
2 | apple
2 | guava
3 | grape
3 | strawberry
4 | blueberry
4 | watermelon
4 | honeydew
4 | apple
我想将序列更新为我选择的数字,例如从 600 开始,我尝试过这样的事情:
UPDATE fruits
JOIN (SELECT @rank := 600) r
SET num=@rank:=@rank+1;
它变成:
------------
num | fruit
------------
601 | apple
602 | banana
603 | orange
604 | apple
605 | guava
606 | grape
607 | strawberry
608 | blueberry
609 | watermelon
610 | honeydew
611 | apple
我想要的结果是:
------------
num | fruit
------------
621 | apple
621 | banana
622 | orange
622 | apple
622 | guava
623 | grape
623 | strawberry
624 | blueberry
624 | watermelon
624 | honeydew
624 | apple
这样之前的 num 为 1 将变为 601,而 2 将变为 602。知道吗?谢谢
解决方案
只是使用怎么样+
?
UPDATE fruits
SET num = num + 600;
(在您的示例中,您似乎想要+ 620
而不是+ 600
。)
推荐阅读
- python - 我需要知道如何对该列表进行排序并删除数字
- c# - Visual Studio - 字符串插值快捷方式(不安装 VS 扩展)
- firebase - 为什么我的 Xamarin.iOS 应用程序没有收到来自 Google Firebase 的推送通知?
- json - 如何在 ajax 发布到控制器时修复“415 不支持的媒体错误”
- c++ - 难以解析后面的评论;在一条线上
- excel - 单击带有 VBA 的动态超链接以跳转到同一工作表中的新位置
- python - 仅在“while”循环中获取并存储一些特定值
- android - TalkBack - 如何用文字标点符号读取字符串?
- python - 当只有一个实例有意义时,我应该使用一个类吗?
- php - Blocked.com 与 Laravel 的集成