mysql - 将一个表中的多条记录插入到另一个表中

标签 mysql

我将多个记录从一个表插入到另一个表,例如

INSERT INTO table3 (
   iSysRecDeleted, 
   iUserId 
) 
SELECT 
   table2.iDeleteId, 
  (SELECT iUserIdOld FROM table1 WHERE table1.col1=table2.col2)
FROM table2

但它给了我“子查询返回超过 1 行”。iUserIdOldtable1 中有多个重复条目。此外,我还必须从另一个表插入 column3这与 table1 和 table2 无关,所以我不必使用 Join。任何人都可以告诉我以正确的方式做到这一点。 提前致谢。

最佳答案

试试这个:

INSERT INTO table3 (
   iSysRecDeleted, 
   iUserId 
) 
SELECT table2.iDeleteId, table1.iUserIdOld 
from table2 join table1 on table1.col1=table2.col2

关于mysql - 将一个表中的多条记录插入到另一个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26009322/

相关文章:

php - 如果用户关闭浏览器或从一个页面导航到另一页面,则使用 PHP 杀死 MySQL 查询

mysql - 多系列(列)MySQL 查询无法正确汇总

c# - 根据组合框选择从 MySQL 表中选择值?

Mysql 在 windows 上慢,在 linux 上快。为什么?

java - 当第一次获取连接然后简单连接时,Hibernate 不会生成 JOIN

php - MySql:从查询中获取id匹配的行数

php - JQuery UI 对话框 - 只有第一个链接有效

php - Mysql查询字段中匹配id

mysql - 使用 1 个数据库字段一起解析日期

php - 在其他表上插入多行并进行条件检查..仅单个查询