从现有表中不存在的表中插入行

rdlzhqv9  于 2021-06-25  发布在  Mysql
关注(0)|答案(2)|浏览(241)

我有两个具有相同模式/结构的表。我想添加第二个表中第一个表中不存在的行。
例如表1

  1. UserID ProjectName Task FirstName
  2. 1 ABC Design Sam
  3. 2 DEF Writing John

表2

  1. UserID ProjectName Task FirstName
  2. 1 ABC Design Sam
  3. 2 DEF Writing John
  4. 3 GHI Presenting Tom
  5. 1 LMN Design Sam

在本例中,复合键是(userid、projectname、task)。我想把表2中的最后两条记录插入表1,因为表1没有这些记录。
在这件事上任何帮助都将不胜感激。

juzqafwq

juzqafwq1#

  1. INSERT INTO tbl1 (UserID, ProjectNam, Task, FirstName)
  2. SELECT UserID, ProjectNam, Task, FirstName
  3. FROM tbl2 WHERE project_name not in (select project_name from tbl1);
xqnpmsa8

xqnpmsa82#

您可以使用插入。。。选择语法

  1. insert into table1(UserID, ProjectName, Task, FirstName) select UserID,
  2. ProjectName, Task, FirstName from table2 t2 left join table1 t1 on
  3. t2.ProjectName!=t1.ProjectName

相关问题