我想创建一个查询,根据id为1的行的int更新int。
我已尝试过此查询,但它表示我无法在更新语句中标记该表。但是我如何在子查询中引用它?
update t1 a set `int1` = (select `int1` from t1 b where b.id=a.id+1);
如何克服我无法使用别名?
答案 0 :(得分:2)
试试这个 -
UPDATE
t1 a
JOIN t1 b
ON b.id = a.id + 1
SET
a.int1 = b.int1;
如果id
值中存在漏洞,则可能会更改查询。