我有一个名为 sample
的表,其内容如下所示,但包含 100 个条目。
+----+----------------+-------------+
| id | title | status |
+----+----------------+-------------+
| 0 | Abcd | active |
| 0 | Alsd | active |
| 0 | Asad | inactive |
| 0 | Awer | active |
| 0 | Awer | active |
+----+----------------+-------------+
我想更新它并为每个标题分配一个从101开始的唯一ID。 所以,它看起来像下表 -
+-----+----------------+-------------+
| id | title | status |
+-----+----------------+-------------+
| 101 | Abcd | active |
| 102 | Alsd | active |
| 103 | Asad | inactive |
| 104 | Awer | active |
| 105 | Awer | active |
+-----+----------------+-------------+
如何使用sql游标来做到这一点?
最佳答案
您可以使用 Row_Number,如下所示:
Update d
Set Id = Nid
from ( Select *, Nid = 100 + Row_number() over(order by title)
from #data ) d
关于mysql - MySQL中使用游标更新表中的id值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45676391/