具有序列1,2,3的MySQL UPDATE值,

时间:2010-09-27 20:31:09

标签: mysql sequence

我的表位置属性'posit'具有未知值(在我的示例中为'0'),我想将其更新为1,2,3,...

在:

 _______________
| title | posit |
|---------------|
|  test |   0   |
|-------|-------|
|  test |   0   |
|-------|-------|
|  test |   0   |
|-------|-------|
|  test |   0   |
'---------------'

在:

 _______________
| title | posit |
|---------------|
|  test |   1   |
|-------|-------|
|  test |   2   |
|-------|-------|
|  test |   3   |
|-------|-------|
|  test |   4   |
'---------------'

像这样的东西

UPDATE myTable 
SET posit = last_updated_value() + 1 
WHERE title='test';

有没有办法通过SQL命令来做到这一点?请注意,'posit'不是自动增量。我只有PHP解决方案。

由于 亨利

1 个答案:

答案 0 :(得分:3)

你有mysql作为标签,所以你可以使用用户定义的变量。像这样:

SET @incr = 0;
SELECT @incr:=@incr+1 FROM DUAL;

有关详细信息,请参阅http://dev.mysql.com/doc/refman/5.0/en/user-variables.html