我需要将数据插入到新表中,该表是从名为Table1和Table2的两个现有表构造的字段,如下所示。 path1和path2来自Table2,但引用存储在Table1中。不应更改表1,因为Table2的路径字段将被更改。
New Table
id path1 path2
1 /a/b /a/c
2 /a/d /a/e
Table1
id path1_id path2_id
1 1 2
2 3 4
Table2
id path
1 /a/b
2 /a/c
3 /a/d
4 /a/e
答案 0 :(得分:0)
你没有给我们太多的工作,所以这是一个尝试只是为了让boll滚动:
insert
into new_table(id, path1, path2)
select t1.id
,p1.path
,p2.path
from table1 t1
join table2 p1 on(p1.id = t1.path1_id)
join table2 p2 on(p2.id = t1.path2_id)
...基于以下关于您的数据的假设:
table1.id
是一个唯一的密钥table2.id
是一个唯一的密钥new_table.id
“继承”来自table1的密钥table1.path1_id => table2.id
table1.path2_id => table2.id