关于在Sqlite中加入的更新

时间:2013-06-26 10:28:31

标签: sql sqlite

我有两个表AB,其中两个P列都很常见,我只需要在update中使用table B命令p值相同,并且C column from table A被赋予

我正在尝试的是:

update B 
set P =100 
where B.P=A.P 
    and A.C=60

但它给了我错误没有这样的专栏A.P

2 个答案:

答案 0 :(得分:3)

您正在更新表B并且没有引用表A,因此sqlite只是不知道在哪里查找。试试这个:

UPDATE B
SET    P = 100
WHERE  B.P IN (SELECT A.P
               FROM   A
               WHERE  A.C = 60)

答案 1 :(得分:1)

你可以这样做

Update B set P = 100 WHERE B.P = (Select P from A WHERE C = 60)