Sqlite 使用select查询更新Python SQL Lite

Sqlite 使用select查询更新Python SQL Lite,sqlite,sql-update,Sqlite,Sql Update,如何使用python上sql lite中另一个表的值更新表列 例如 表1 id name value brand 1 n1 v1 - 2 n2 v2 - 表2 id brand 1 b1 我想更新id=1的table1 brand=b1 我正在努力做到这一点 UPDATE table1 r join table2 p on r.id= p.id set r.brand=p.brand 但是python在执行该语句时抛出了一个错误 sqlite3.Operation

如何使用python上sql lite中另一个表的值更新表列

例如

表1

id name value brand
1  n1   v1    -
2  n2   v2    -
表2

id brand
1  b1
我想更新id=1的table1 brand=b1

我正在努力做到这一点

UPDATE table1 r join table2 p on r.id= p.id set r.brand=p.brand
但是python在执行该语句时抛出了一个错误

sqlite3.OperationalError: near "r": syntax error

任何解决方案,请

我相信您需要删除。从SET子句的左侧开始:


另外,关于这个问题的任何内容似乎都不是Python特有的,因此我建议删除Python标记。

更新table1 SET table1.brand=从table2中选择table2.brand,其中table2.id=table1.id?它不起作用。sqlite3.OperationalError:near.:语法错误我在PythonSQLLite中尝试过这个,所以我认为应该是meaningful@Saravana,不是问题;您不知道这个问题与sqlite Python模块无关。这为你解决了问题吗?如果是这样,请接受答案。我们将尝试并告知。谢谢你的提示
UPDATE table1
    SET brand = (
        SELECT table2.brand FROM table2 WHERE table2.id = table1.id
    );