我有两张桌子:
data1
A B
0 1
0 1
data2
A B
2 3
2 3
我想创建一个第4个表,它是上面的垂直堆栈:
data3
A B
0 1
0 1
2 3
2 3
我不熟悉SQLite,目前正在使用SAS,这可以使用DATA步骤查询来完成:
data data3;
set data1 data2;
run;
我如何在SQLite中执行此操作?
答案 0 :(得分:3)
您可以使用union all
:
create table data3
select A, B from data1 union all
select A, B from data2;
请注意,在SQL中,您不需要创建新表来执行此操作。您可以将union all
放在子查询中:
select d.*
from (select A, B from data1 union all
select A, B from data2
) d;
这通常比创建另一个表更好。
答案 1 :(得分:2)
您可以使用CREATE TABLE ... AS SELECT
和INSERT INTO table SELECT ...
查询,例如:
CREATE TABLE data3 AS SELECT * FROM data1;
INSERT INTO data3 SELECT * FROM data2;