可能重复:
删除脚本 SQL Server 2008
这是我试图解决的一种情况。我有一个装有重复项的表。发生这种情况是因为类似的行是从两个或更多不同的来源加载的。这是在包装中处理的。
但我想删除那些重复的行。这里没有关键属性。来源的例子是Cleveland City
和Ohio State
。我有一列显示该行是从哪个源加载的(DataSource
列)。
因此在行中它显示为DataSource = 'Cleveland'
或DataSource = 'Ohio'
。
我想保留那些从俄亥俄州加载时导致重复的记录。它的 10 万条记录我可能不得不使用连接。还有一件事我的主表与其他四个或五个表连接在一起rId
,每行都是唯一的,这就是为什么你看到我加入这些表而我认为我做错了。
你能检查一下我的工作吗?我真的很感激。
--Delete ct from--this is to delete w/c is my main intention
SELECT *
FROM
(
(
SELECT Rid,UID,ADDRESS,City,State,Zip,DataSource
FROM F_staRes where dataSource='Ohio'
) O inner join
(
SELECT Rid,UID,ADDRESS,City,State,Zip,DataSource
FROM F_staRes
where DataSource in ('Clev','Columbus')
) ct
on O.UID=ct.UID and O.ADDRESS=ct.ADDRESS and O.City=ct.City and
O.State=ct.State and O.zip=ct.zip
join dbo.ResOrig ro
on ct.rId=ro.rId
join dbo.ResSta rs
on ct.rId=rs.rId
join dbo.ResDest rd
on ct.rId=rd.rId
where ct.DataSource in ('Clev','Columbus')