使用子查询进行Sqlite Update查询

前端之家收集整理的这篇文章主要介绍了使用子查询进行Sqlite Update查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须使用表test_groupedconsent的id值更新表test_test列“testconsent_id”,其中test_test中的patient_id和test_groupedconsent表中的patient_id匹配,
两个表匹配中的creation_date也是如此.
我正在使用以下查询,但收到错误 – “附近”为“:语法错误”.

查询有什么问题?

Update test_test as Tinner join (select id,patient_id,creation_date from test_groupedconsent) as Aon A.patient_id = T.patient_id and A.creation_date = T.creation_dateset T.testconsent_id = A.id;

解决方法

您不能直接在UPDATE语句中使用连接.

您必须使用相关子查询来查找所需的值(在子查询中,您可以执行任何操作,但在这种情况下,您甚至不需要连接):

UPDATE test_test
SET testconsent_id = (SELECT id
                      FROM test_groupedconsent
                      WHERE patient_id    = test_test.patient_id
                        AND creation_date = test_test.creation_date);

猜你在找的Sqlite相关文章