在SQLite中,如何使用表B中某列的值更新表a中的某列?

在SQLite中,如何使用表B中某列的值更新表a中的某列?,sql,sqlite,sql-update,Sql,Sqlite,Sql Update,我需要帮忙,因为我运气不好 表A id groupid 1 100 2 101 3 102 表B groupid newid 100 100 101 100 102 100 更新表A,使表A成为 id groupid 1 100 2 100 3 100 它使用TableB获取新ID 提前感谢sqlite不支持更新

我需要帮忙,因为我运气不好

表A

id   groupid   
 1     100   
 2     101   
 3     102  
表B

groupid   newid  
 100        100  
 101        100   
 102        100 
更新表A,使表A成为

id   groupid   
 1     100   
 2     100   
 3     100  
它使用TableB获取新ID


提前感谢

sqlite不支持更新中的联接,但您可以使用子查询。试着这样做:

update a
set groupid = coalesce(
 (select newid from b where groupid = a.groupid limit 1),
 groupid
);

如果您知道b中的每一行对应于a中的每一行,那么不需要限制1和合并。但安全总比后悔好。