将数据从table1复制到table2,数据类型,名称和附加列略有不同

insert mysql sql sqlbulkcopy

我正在运行一个任务,我需要将数据从table1复制到table2table1是从一个非常古老的应用程序生成的,它有一种创建异常数据类型的趋势,例如十进制等(这些是不必要的)。

所以结构如下所述:

表格1:

ordernumber - decimal(11,0)
var3 - varchar(4)
var4 - varchar(30)
var5 - int(50)
...

表2:

id int() <- PK, AI
order_number - int(xx)
var3 - varchar(x)
var4 - varchar(x)
var5 - int(x)
....

如图所示,表2中的附加列idordernumber被修改为order_number以及从decimal更改为int的数据类型。 x被定义为在此上下文中不相关。

有没有一种干净的方式来复制数据?

一般承认的答案

您可以使用INSERT INTO...SELECT statament。尝试

INSERT INTO table2 (orderNumber,var3, var4, var5)
SELECT orderNumber,var3, var4, var5
FROM table1


许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因