我需要将一行中的行追加到现有表中。我在想类似下面的内容,但这会产生错误
graph.facebook.com/v2.12/5568669414690512/comments?message=Hello
有没有办法将select *
into table1
from (select *
from table1
union
select *
from table2) as tmp
或ALTER TABLE
与UPDATE
一起使用?
答案 0 :(得分:3)
我将假设以下情况,
1-您需要在表1中插入表2中的所有数据 使用这个
INSERT INTO TABLE1 (Col1, Col2)
SELECT Col1, COl2 FROM Table2
2-你有2个表,表1,需要在表3中插入
INSERT INTO TABLE3 (Col1, Col2)
SELECT Col1, COl2 FROM Table1
Union all --to remove duplication in data
SELECT Col1, COl2 FROM Table2
答案 1 :(得分:1)
直接从Table2直接插入Table1
INSERT INTO TABLE1 (Col1, Col2)
SELECT
Col1, COl2
FROM
Table2
答案 2 :(得分:0)
使用此查询:
-- merge table1 and table2 data in temp table
SELECT * INTO #Temp
FROM
(
SELECT *
FROM table1
UNION
SELECT *
FROM table2
)
-- empty table1 and delete existing data
TRUNCATE TABLE table1
-- insert all merged data in table 1
INSERT INTO table1
SELECT *
FROM #Temp
您可以使用
删除重复行UNION ALL
代替UNION