我正在尝试创建一个新表,该表使用两个关键字都通用的id列来组合来自两个不同表的列。假设我们有一个名为db.db的数据库,其中包含两个名为table1和table2的表。
table1看起来像这样:
id | item | price
-------------
1 | book | 20
2 | copy | 30
3 | pen | 10
和这样的table2:
id | shop | color
-------------
1 | 11 | blue
2 | 34 | red
3 | 25 | red
在sqlite3中我应该怎么写才能有这样的东西?
id | item | price | shop | color
-------------------------------
1 | book | 20 | 11 | blue
2 | copy | 30 | 34 | red
3 | pen | 10 | 25 | red
谢谢!
答案 0 :(得分:1)
编辑:尝试将“左联接”更改为“内联接”,以查看其是否有效。
import sqlite3
conn = sqlite3.connect('db.db')
c = conn.cursor()
def merged():
c.execute('CREATE TABLE table3 AS SELECT * FROM table1 t1 INNER JOIN table2 t2 ON t1.id = t2.id')
for line in c.fetchall():
print(line)
merged()
答案 1 :(得分:0)
您可以使用namespace std{}
:
itertools.groupby