0
我想简单的改造应用到一组常见的行,如果一个行符合特定的条件。应用转换到组一行行的满足标准的MySQL
例如,在下面的数据,我想1添加到每个值用于具有为0的值的任何ID ...为他的所有值,使得该数据
Value ID
2 1
3 1
0 2
1 2
会变成这个...
Value ID
2 1
3 1
1 2
2 2
任何帮助非常感谢!
我想简单的改造应用到一组常见的行,如果一个行符合特定的条件。应用转换到组一行行的满足标准的MySQL
例如,在下面的数据,我想1添加到每个值用于具有为0的值的任何ID ...为他的所有值,使得该数据
Value ID
2 1
3 1
0 2
1 2
会变成这个...
Value ID
2 1
3 1
1 2
2 2
任何帮助非常感谢!
Arrg。这是MySQL。你可以用join
做到这一点:
update t join
(select distinct t2.id
from t t2
where t2.value = 0
) t2
on t2.id = t.id
set t.value = t.value + 1;
我大概应该说,表是一个临时表 - 更新不与临时表发挥很好 - 什么解决办法? – gh0strider18 2014-11-25 14:00:02
@ gh0strider18。 。 。哎呀。我非常了解这一点。那么解决方案就是使用'join'。 – 2014-11-25 14:01:54
嗯,我仍然得到1137错误,其中mySql无法重新打开临时表。再次,我认为这是一个更新错误... – gh0strider18 2014-11-25 14:09:37