我想将两个表连接到一个包含一个公共列的表中,我需要尝试避免所有重复项。
答案 0 :(得分:2)
看看这个(SQL Server 2008中的新内容):MERGE (Transact-SQL)
执行插入,更新或删除 基于的目标表上的操作 与源连接的结果 表。例如,你可以 通过插入同步两个表, 更新或删除一行中的行 根据发现的差异表 另一张桌子。
答案 1 :(得分:0)
也许您需要SELECT DISTINCT
和LEFT JOIN
答案 2 :(得分:0)
你可以做一个UNION并插入新表(注意你必须先创建表)
INSERT INTO NewTable
SELECT Column1
FROM FistTable
UNION
SELECT Column2
FROM SecondTable
答案 3 :(得分:0)
希望这会有所帮助
MERGE <target_table> [AS TARGET]
USING <table_source> [AS SOURCE]
ON <search_condition>
[WHEN MATCHED
THEN <merge_matched> ]
[WHEN NOT MATCHED [BY TARGET]
THEN <merge_not_matched> ]
[WHEN NOT MATCHED BY SOURCE
THEN <merge_ matched> ];