【发布时间】:2015-11-13 15:34:15
【问题描述】:
好的,所以我有一个包含以下列的表格
col1 col2 col3
a a 1
a a 2
a b 3
a b 4
a b 5
所以我必须将上述表拆分为多个表,同时将 col1 和 col2 保存在单独的表中,并将主键与 col3 的外键关系保存在另一个表中。这就是它的外观。
table1
Id col1 col2
table2
id col3 table1fk
我能够将表拆分为两个表,但它在 table1 中创建了重复的行并将它们映射到 table2 中的单行。 我想要实现的是在 table1 中创建一个不同的行并将它们映射到 table2 中的多个不同的行。
我使用的查询是。
Merge Into table1 As c
Using oldtable ON 1=0
When Not Matched By Target Then
Insert(col1,col2) Values(val1,val2)
Output Inserted.Id,oldtable.val3
Into table2(fktable1,col3);
我可以做些什么不同的事情来实现它?
【问题讨论】:
标签: sql sql-server database sql-server-2008 relational-database