2016-04-20 39 views
-2

我有两个表,table1有2列,table2有3列。在SQL中插入表1到表2的数据

我想将table1 col1 and table1 col2的值插入到一列的table2中。

这里是table1数据:

╔════════╦════════╗ 
║ Col1 ║ Col2 ║ 
╠════════╬════════╣ 
║ Value1 ║ Value2 ║ 
╚════════╩════════╝ 

请插入到table2行:像

╔════════╦ 
║ Value1 ║ 
╠════════╣ 
║ Value2 ║ 
╚════════╝ 

如何使用SQL做到这一点?

+3

有没有听说过标点符号?我无法理解你的问题。 – HoneyBadger

回答

0

如果你想每一个不同的排列使用复制:

INSERT INTO table2 (col1, col2) 
SELECT col1, col2 FROM table1; 

或者逐个

INSERT INTO table2 (col1) 
SELECT col1 FROM table1; 

INSERT INTO table2 (col2) 
SELECT col2 FROM table1; 

如果你想在同一行中来连接使用

INSERT INTO table2 (col3) 
    SELECT col1 + col2 FROM table1; 

INSERT INTO table2 (col3) 
    SELECT col1 || col2 FROM table1; 

http://www.w3schools.com/sql/sql_insert_into_select.asp

+0

我想不连接两列。我想要一个要求这两列值插入表中作为另一个表中的单独的行 –

+0

好的,那么你必须这样做:
INSERT INTO table2(col1) SELECT col1 FROM table1;
INSERT INTO table2(col2) SELECT col2 FROM table1; 请投票反应 –

+0

嗨大卫,谢谢,但我需要一个使用单个查询。 –