MySQL下将一个表的数据插入到另外一个表的实现语句

  • A+
所属分类:数据库技术

开发中,我们经常需要将一个表的数据插入到另外一个表,有时还需要指定导入字段,虽然这个实现起来非常简单,但是还是会困扰许多新手,因此专门发一篇文章备查。

如果2张表的字段一致,并且希望插入全部数据,可以用这种方法:

Code:

  1. INSERT INTO 目标表 SELECT * FROM 来源表;

比如要将 articles 表插入到 newArticles 表中,则是:

  1. INSERT INTO newArticles SELECT * FROM articles;

如果只希望导入指定字段,可以用这种方法:

  1. INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;

注意字段的顺序必须一致。

如果您需要只导入目标表中不存在的记录,可以参考另外一篇文章

MySQL 当记录不存在时插入(insert if not exists)