我有2个表,并且喜欢用另一个表中的值更新其中一个。

software
---------
id ,
purchprice

softwarecost
------------
id ,
purchprice

我已经尝试过这些查询,但是SQLite不支持带有UPDATE的JOINS。任何可以对此查询的人都可以。感谢您的帮助。
UPDATE software
SET software.purchprice=softwarecost.purchprice
WHERE software.id=softwarecost.id

UPDATE software
INNER JOIN softwarecost on software.id=softwarecost.id
SET software.purchprice=softwarecost.purchprice

最佳答案

这会工作

UPDATE
      software
SET purchprice = (SELECT purchprice
                  FROM softwarecost
                  WHERE id = software.id)
where EXISTS (SELECT purchprice
                  FROM softwarecost
                  WHERE id = software.id)

在这里我们使用存在是因为
否则,如果找不到“相关”行,查询将把software.purchprice设置为null。

10-08 06:30