使用序列号 mysql 更新列

2021-11-20 00:00:00 sql sorting mysql

我有一个包含列的表:(这只是我有 50K 条记录的一个例子)

I have a table with the columns: (this is only an example I have 50K records)

Name,   Number

Joe     Null
Michael Null
Moses   Null

我用 1-3 的序列号更新数字,所以它看起来像这样:

I to update the number with a sequence number from 1-3 so it will look like this:

Name,   Number

Joe     1
Michael 2
Moses   3

如何用一个 SQL 命令在 SQL for Mysql 中执行此操作

How can I do it in SQL for Mysql in one SQL command

推荐答案

SET @rank:=0;
update T
set Number=@rank:=@rank+1;

更新

另一种说法

UPDATE T
JOIN (SELECT @rank := 0) r
SET Number=@rank:=@rank+1;

相关文章