我正在尝试在 SQL Server 中创建一个表,该表具有与以下相同的输出:
Select *
FROM Table1
LEFT JOIN Table2
ON
Table1.Key1 = Table2.Key1
AND Table1.Key2 = Table2.Key2
上面查询的结果正是我需要的,但作为一个新表。
问题是,两个表之间有多个公共列。我已经执行了以下代码:
Select *
INTO NewTable
FROM Table1
LEFT JOIN Table2
ON
Table1.Key1 = Table2.Key1
AND Table1.Key2 = Table2.Key2
出现以下错误:
消息 2705,级别 16,状态 3,第 1 行
每个表中的列名必须是唯一的。表 'NewTable' 中的列名 'Key1' 被指定多次。
有人可以帮忙吗?经过漫长的一天在互联网上搜索而没有任何解决方案,我将不胜感激。
非常感谢您!
这将帮助您确定获得唯一列表所需的记录。
select ',' + Column_Name
from INFORMATION_SCHEMA.COLUMNS c2
where column_Name not in (
select COLUMN_NAME
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = 'table1')
and table_Name = 'Table2'
所以你可以放心地说:
Select table1.*
<<Paste in your results from above here>>
INTO NewTable
FROM Table1
LEFT JOIN Table2
ON
Table1.Key1 = Table2.Key1
AND Table1.Key2 = Table2.Key2
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句