2015-06-30 30 views
1

我有一个表像下面,从1更新增量的整数值开始的列的值在MySQL

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查询?请帮助!

+0

更新'DisplayOrder'或许与是否有相同的顺序,并不会被删除的主键值。 –

回答

1

试试这个:

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

您可以尝试使用此,

SET @myval = 0; 
UPDATE table_name SET display_order=(@myval := @myval+1) ; 
+0

谢谢!它工作正常! –