2014-08-31 41 views
0

有沒有人有一個想法,如果我們可以得到「聯合」sqlite3命令的結果並將返回的數據庫直接存儲在新的數據庫對象中?直接在新的數據庫中保存聯合(合併)命令

對於前:

我們有表1中的數據庫(T1)在數據庫1和表2(T2)2

命令工具:

sqlite> select * from t1 union select * from t2; 

它提示新表中的命令行工具,但我不知道如何將結果存儲在一個新的數據庫?

回答

0
CREATE TABLE t3(...); 
INSERT INTO t3 SELECT * FROM t1 UNION SELECT * FROM t2; 

或者,如果你不關心列類型和約束:

CREATE TABLE t3 AS SELECT * FROM t1 UNION SELECT * FROM t2; 
+0

非常感謝!沒有發現它已經提到了主數據庫。你知道創建包含所有命令的腳本的最簡單方法嗎?它是用python爲例嗎? – Trichophyton 2014-08-31 14:03:22

+0

我的意思是如果我想自動化一切,如下所示:1)$ sqlite3 newDB.data; 2)sqlite>將數據庫'test.db'附加爲db01; sqlite>將數據庫'test2.db'附加爲db02; sqlite>創建表格t3作爲select * from t1 union select * from t2; sqlite> – Trichophyton 2014-08-31 14:06:54

+0

您可能需要閱讀[documentation](http://www.sqlite.org/cli.html),或者提出一個新問題。 – 2014-08-31 14:12:45