我需要帮助来尝试更新具有多个重复记录的表,但我被卡住了。只更新SQL Server中重复条目的第一条记录
我有这张表,我需要更新im_cust9
与alt_item_id1
值。
我使用来从表中该结果的查询如下:
SELECT
o.item_id, o.alt_item_id1, o.im_cust9, o.owner_id, o.if_updatestamp
FROM
item_master o
INNER JOIN
(SELECT
alt_item_id1, COUNT(*) AS dupeCount
FROM
item_master
WHERE
owner_id = 'GIII' AND alt_item_id1 <> ''
GROUP BY
alt_item_id1
HAVING
COUNT(*) > 1) oc ON o.alt_item_id1 = oc.alt_item_id1
WHERE
owner_id = 'GIII' AND o.alt_item_id1 <> ''
ORDER BY
alt_item_id1, if_updatestamp ASC
不知道如何更新每个组副本alt_item_id1的最古老的记录
我使用SQL Server 2012
任何帮助,不胜感激!
所以你实际上并不具有重复行 - 只是alt_item_id1中相同owner_id的重复值,是否正确?你想更新im_cust9为那些具有相同的alt_item_id所有行最低if_updatestamp的item_id? – Jan
@janschweizer正确! – user2797021
[更新SQL Server表中所有除重复记录之一以外的所有记录](http://stackoverflow.com/questions/25090008/update-all-but-one-of-duplicate-records-in-table-in -sql-server) –