我有一张像下面这样的桌子,

ID      Name    DisplayOrder
1       abc     2
2       def     5
3       efg     1
4       xyz     3

我要更新DisplayOrder列的值,如下所示,
ID      Name    DisplayOrder
1       abc     1
2       def     2
3       efg     3
4       xyz     4

什么是mysql查询救命啊!

最佳答案

试试这个:

SET @pos := 0;
UPDATE table SET DisplayOrder = ( SELECT @pos := @pos + 1 ) ORDER BY ID;

10-05 18:55