sqlite:在公共密钥上合并两个表

时间:2011-07-05 19:18:53

标签: python sqlite

一个简单的sqlite查询运行速度非常慢,我不知道为什么。我有两个表A和B,它们具有相同的主键和不同的列。我想创建具有主键的表C以及A中的所有列和B中的所有列。我通过python连接游标cs运行它。

   cs.execute('create table tableC as select a.*, b.*
   from tableA a left join tableB b
   on a.rid = b.id')

左连接是可以的,因为两个表具有相同的行数。

,而不是在其中一个表中写出所有列名,而是允许重复id列。

每个表有50,000行和大约200列。

有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

你可以create a view这将是两张桌子的实时图像,但看起来像一张新桌子。但它不会比没有视图的选择更快。

如果您需要一次性转换(或在需要时更新,甚至可能通过触发更新),您可以看到this answer