Mysql 复制表数据2 (insert into select)

首先要明确, insert into select 要求 目标表已存在 !!!

 

场景1、 如果两张张表(来源表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:

  insert into 目标表 select * from 来源表 ;

  例如:  要将A 表插入到B 表中,则可以通过如下SQL语句实现:

  insert into B select * from A ;

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

  insert into 目标表 (字段1, 字段2, ...) select 字段1, 字段2, ...from 来源表 ;

  请注意 :  以上两表的字段类型必须一致,否则会出现数据转换错误。

场景3、

①如果要将表TABLE_A,TABLE_B数据导入第三张表TABLE_C中

  insert into table_c select * from table_a  union all  select * from table_b;

  insert into table_c (column1,column2,……) select column1,column2,……from table_a union all select column1,column2,……from table_b;

②如果要将表TABLE_A,TABLE_B数据导入第三张表TABLE_C中,并且去掉重复数据:

  insert into table_c  select * from table_a union select * from table_b;

  insert into table_c (column1,column2,……) select column1,column2,……from table_a  union  select column1,column2,……from table_b;

 

posted @ 2019-08-09 22:26  Avicii_2018  阅读(1798)  评论(0编辑  收藏  举报