为什么我在表#preweighting_data_dma中获取重复记录?

时间:2012-04-18 14:55:04

标签: sql duplicates

SELECT respid, cq4_1, dma
INTO #preweighting_data_dma
FROM #preweighting_data a
LEFT OUTER JOIN #us_zip b
ON trim(a.cq4_1) = trim(b.zip_code);

2 个答案:

答案 0 :(得分:2)

您正在获得重复项,因为多行符合您的条件。

要防止重复,请使用DISTINCT关键字:

SELECT DISTINCT respid, cq4_1, dma
etc...

答案 1 :(得分:0)

如果之前preweighting_data中没有重复项,那么唯一的另一个机会就是us_zip.zip_code列包含一些重复项。

您可以查看此查询:

select trim(zip_code), count(*) 
from us_zip 
group by trim(zip_code) 
having count(*) > 1

如果你以这种方式检测到重复,那么'LEFT JOIN'“传播”然后进入你的新表。