我有2个不同结构的数据库。
我需要将数据库A中的信息复制到数据库B.
数据库A有1个表,而数据库B有2个相关的表。
这是一个Q& A网站,因此旧数据库(A)有一个包含问题和答案的表格。
在新数据库中,这些是分开的,答案必须包含一个带有问题ID的字段。
请帮我发一条SQL请求。
像
这样的东西 "INSERT INTO table1 (field1,field3,field9)
SELECT table2.field3,table2.field1,table2.field4
FROM table2"
还有一件事......新数据库中的某些值是已知的(将是难以处理的......不是从旧数据库中获取的)
答案 0 :(得分:1)
您可以简单地使用以下内容并在需要的地方手动指定或从您要复制的旧数据库/表中获取它。如果列的名称不同,或者在新数据库中的列数不同,也会有所帮助。
USE `old_database`;
INSERT INTO `new_database`.`new_table`(`column1`,`column2`,`column3`)
SELECT `old_table`.`column2`, `old_table`.`column7`, `old_table`.`column5`
FROM `old_table`
答案 1 :(得分:0)
您需要在声明中指定数据库......
insert into database1.table1
select from database2.table2