将另一个表中的选定列插入表中[重复]

Posted

技术标签:

【中文标题】将另一个表中的选定列插入表中[重复]【英文标题】:Insert into table the selected columns from another table [duplicate] 【发布时间】:2014-05-15 17:19:06 【问题描述】:

什么查询会将选定的列从一个表插入到另一个表中以获得所需的值?

查询前

table1=>Colums(A,B,C)
  row1(a,b,1)
  row2(c,d,0)
  row3(e,f,1)

table2=>Columns(id,A,B)

查询后

table1 is unchanged.

table2(id,A,B)
  row1(id,a,b)
  row2(id,e,f)

我需要在 table2 中插入来自 table1 的所有行,其中 'C=1', C 在多条记录中可能等于 1。

【问题讨论】:

哪个 RDBMS? mysql? SQL 服务器? ...? 【参考方案1】:
INSERT INTO TABLE2(A,B,C)
SELECT A,B,C
FROM TABLE1
WHERE C = 1

【讨论】:

如果没有INTO,它只能在SQL Server和MySQL上运行,如果你添加INTO,它几乎可以在任何数据库上运行。【参考方案2】:

您也可以不先创建表格而将所有列选择到表格中:

SELECT *
INTO TABLE2
FROM TABLE1
WHERE C=1

【讨论】:

以上是关于将另一个表中的选定列插入表中[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PHP、SQL 和 Microsoft Access 将另一个表中的 select max 函数和用户输入的变量插入表中?

使用 AJAX/PHP 将另一个站点表中的内容插入我的表单?

将另一个表中的逐行值转换为字符串并将其插入到 SQL 中的 NOT IN 子句中

Oracle:创建存储过程以将另一个存储过程的结果插入表中

插入带有列的命令[重复]

如何使用oracle程序将数据从多个表中插入一个表中