我想将table1的内容复制到table2中,但它不是一个直接的副本,因为table2包含的列多于表1.结构类似于:
表1 { COLUMN2 column4 column6 }
表2 { COLUMN1 COLUMN2 栏3 column4 column5 column6 }
我想要做的是将table1中的每一行添加到table2,并为缺少的列设置默认值。任何帮助将不胜感激。
答案 0 :(得分:3)
你可以做一个
INSERT INTO xxx
SELECT yyy
在select子句中,输入默认值。
INSERT INTO Table2(column1, column2, column3, column4, column5, column6)
SELECT 'horse', column2, 2, column4, 'what ever I want', column6
FROM Table1
因此在表2中,所有column1都将具有'horse'值。 所有column3都有2个。 等
答案 1 :(得分:0)
使用INSERT..INTO SELECT
声明
INSERT INTO table2 (column2, column4, column6)
SELECT column2, column4, column6
FROM table1
因此,在这种情况下,列{} column1
,column2
,column3
将具有空值。或者你设置的任何默认值。
答案 2 :(得分:0)
在SQL上不是很好但是这样:
INSERT INTO [Table1] (column2, column4, column6) SELECT (column1, column2, column3) FROM [Table2]
希望这会有所帮助。可能有用的链接http://www.blackwasp.co.uk/SQLSelectInsert.aspx
投票给我我需要积分:P
答案 3 :(得分:0)
请尝试
INSERT INTO
Table2 (
column1,
column2,
column3,
column4,
column5,
column6,
)
SELECT
'StaticValue1',
column2,
'StaticValue2'
column4,
'StaticValue3'
column6,
FROM
Table1
答案 4 :(得分:0)
将完整表格复制到新表格中:
SELECT * INTO table2 FROM table1;
http://www.w3schools.com/sql/sql_select_into.asp
将表复制到现有表中:
INSERT INTO table2
SELECT * FROM table1;
答案 5 :(得分:0)
insert into TABLE2
select null colum1, column2,null colum3,column4,null colum5,column6
from((
Select TABLE1.column2, TABLE1.column4, TABLE1.column6
from TABLE1, TABLE2
where TABLE1.primarykey=TABLE2.primarykey))