2

我有两张桌子。首先有 id (AI) 字段和 old_id (Int) 字段。第二个表有一个来自第一个表 old_id 的引用字段 p_id 作为关系点。

我想将 p_id 更新为 firstTable.id 值。是否可以使用 firstTable.id 返回的值更新 secondTable.p_id ?

这是我的测试sql:

UPDATE secondTable sT 
SET sT.p_id = (
    SELECT fT.id 
    FROM firstTable fT 
    WHERE fT.old_id = secondTable.p_id
)
4

1 回答 1

2

您可以JOIN这样更新:

UPDATE secondTable sT 
INNER JOIN firstTable fT ON fT.old_id=secondTable.p_id
SET sT.p_id = fT.id;
于 2013-02-27T12:48:51.887 回答