我有一个列“step_ID”,“goal_ID”和“step_number”的表。如何用增量值更新一组记录
step_id的数据类型将是主要的,自动递增的关键
goal_ID组的各个步骤为特定目标
STEP_NUMBER目前0无处不在,新创建
我想更新表,以便STEP_NUMBER设为0,1,2,3等等,每组有相似的“goal_ID”,由step_ID排序。
说了一种不同的方式,我想按照step_ID从小到大的顺序给出从0到目标有多少个给定目标的步数。
我尝试了很明显的:
$query = " UPDATE steps SET step_num = step_num + 1 WHERE goal_ID='689' ORDER BY step_ID";
但只是将所有的行1,(预期)
我想也利用各种子查询,但我得到一个错误说我不能” t更新FROM子句中使用的表。
想法?
我仍然收到错误:“你不能在FROM子句中指定更新的目标表'步骤'”? – Symmitchry 2010-11-21 23:26:32
@Symmitchry - 看起来你正在遇到MySQL中的一个bug。我已经发布了一个解决方法。 – Thomas 2010-11-22 02:43:43