Administrator
发布于 2020-09-08 / 2381 阅读 / 0 评论 / 0 点赞

MYSQL把一张表的数据批量复制到另外一张表

MYSQL把一张表的数据批量复制到另外一张表

MySQL数据库快速将一个表的数据备份到另一个表中。

#如果有B表就删除
DROP TABLE IF EXISTS B;
#根据A表结构创建B表
CREATE TABLE B LIKE A;
#查询A表数据插入B表
INSERT INTO B SELECT * FROM A;

1. 表结构完全一样

CREATE TABLE 表1 LIKE 表2;
insert into 表1 select * from 表2

2. 表结构不一样(这种情况下得指定列名)

insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 from 表2

3.不同数据库,需要在表前面加数据库前缀,database.表名。

注意:以上测试过OK,sql语句不需要在insert后面加values。

  • 真实示例
select count(*) from tb_org_order

create table tb_org_order_item like tb_org_order_item_0909

create table tb_org_order like tb_org_order_0909

select * from tb_org_order_0909 where order_date>'2020-07-01' ORDER BY order_date LIMIT 1

select create_time from tb_org_order_item_0909 WHERE create_time>'2020-07-01' ORDER BY create_time LIMIT 1

INSERT into tb_org_order select * from tb_org_order_0909 where order_date>'2020-07-01'

INSERT into tb_org_order_item select * from tb_org_order_item_0909 where create_time>'2020-07-01'

评论